https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64853
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Mine. I thought I had handled this correctly with vrp_valueize_1 doing
/* Return the singleton value-range for NAME if that is a constant
but signal to not follow SSA edges. */
static inline tree
vrp_valueize_1 (tree name)
{
if (TREE_CODE (name) == SSA_NAME)
{
value_range_t *vr = get_value_range (name);
if (range_int_cst_singleton_p (vr))
return vr->min;
/* If the definition may be simulated again we cannot follow
this SSA edge as the SSA propagator does not necessarily
re-visit the use. */
gimple def_stmt = SSA_NAME_DEF_STMT (name);
if (prop_simulate_again_p (def_stmt))
^^^
return NULL_TREE;
but I guess the singleton handling needs to be guarded with the same.