Message ID | CAFiYyc3aRPokVTdvWU8FkcorSekOKYeuJ2VAfU7Lg6Crp+UwLA@mail.gmail.com |
---|---|
State | New |
Headers | show |
diff --git a/gcc/tree-ssanames.c b/gcc/tree-ssanames.c index 82fd4a1..80fcf70 100644 --- a/gcc/tree-ssanames.c +++ b/gcc/tree-ssanames.c @@ -207,7 +207,8 @@ set_range_info (tree name, enum value_range_type range_type, unsigned int precision = TYPE_PRECISION (TREE_TYPE (name)); /* Allocate if not available. */ - if (ri == NULL) + if (ri == NULL + || (precision != ri->get_min ().get_precision ())) and I think you need to clear range info on promoted SSA vars in the promotion pass.