VRP: normalize VR_VARYING in PLUS/MINUS_EXPR handling
Aldy Hernandez
aldyh@redhat.com
Tue Sep 11 10:34:00 GMT 2018
For addition and subtraction, we're currently punting on things like
[0,0] - VR_VARYING. However, if we normalize VR_VARYING to the entire
domain, we can see that the above is actually [-MIN+1, +MAX].
We would've normally caught this sort of things with my rewrite of the
binary operators, but PLUS/MINUS are special in that they're pretty much
the only operator that keeps symbolics through it's calculations. This
is why we can't just blindly treat symbolics as [-MIN, +MAX] as I've
done elsewhere. PLUS/MINUS are handled specially (ugly) :-/.
OK for trunk?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: curr.patch
Type: text/x-patch
Size: 975 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20180911/c9fecc85/attachment.bin>
More information about the Gcc-patches
mailing list