https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42436
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|NEW |RESOLVED --- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> --- I think this was trying to cover things like if (d != 0) tem = a / d; where the non-zero range of d on the division cannot be put in global ranges for its SSA name since that would be incorrect for uses not guarded by the condition. So it would ask for a new flag on GIMPLE statements to mark the division not trapping (like we have TREE_THIS_NOTRAP). Transforms like PRE or LIM that do code motion of course have to be careful to not move the stmt outside of the condition that made it not trapping - something which would be as hard to guarantee as computing the non-trappingness in the first place. So yes, the case that made me file this bug is fixed with global ranges. Let's close this bug since it's quite unspecific.