https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76490

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Found new range for isize_3: [1, +INF]
Found new range for isize_20: [1, +INF]
Found new range for isize_5: [1, +INF]
Found new range for _12: [0, 2147483646]
Found new range for _4: [1, 2147483646]
Found new range for isize_3: [1, +INF(OVF)]
Found new range for isize_20: [1, +INF(OVF)]
Found new range for isize_5: [1, +INF(OVF)]
Found new range for _12: [0, +INF(OVF)]
Found new range for _4: [0, +INF]
Found new range for isize_3: [1, +INF]
Found new range for isize_20: [1, +INF]
Found new range for isize_5: [1, +INF]
Found new range for _12: [0, 2147483646]
Found new range for _4: [1, 2147483646]
Found new range for isize_3: [1, +INF(OVF)]
Found new range for isize_20: [1, +INF(OVF)]
...

this happens because intersect_ranges doesn't handle +INF vs. +INF(OVF)
correctly
(operand_equal_p treats them as equal).  I have a patch.

Reply via email to