https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42436
--- Comment #3 from Andrew Macleod <amacleod at redhat dot com> --- What needs to be done here? anything? Looking at VRP1, there is only a single divide left at that point: countm1.6_54 = _12 / _13; and VRP1 is setting the global range of _13 to: _13: unsigned int [2, 2147483647] So at least from that point on, it is trivial to determine the divide is non-trapping even using the global ranges.