On 02/06/2017 08:33 AM, Richard Biener wrote:

ah, indeed vr0type is VR_ANTI_RANGE and yes we have the case
of a range with an anti-range "inside".  This also covers [-1,1] v ~[0,0]
where you choose the much larger anti-range now.  So at least we
want to have some idea about the sizes of the ranges (ideally we'd
choose the smaller though for most further propagations anti-ranges
often degenerate to varying...)
vr0 as an anti-singleton range like ~[0,0] is the only one likely of any interest right now and that's always going to have a range that is all but one value :-)

vr1 is the tricky case. We could do v1.max - vr1.min and if that overflows or is some "large" value (say > 65536 just to throw out a value), then we conclude creating the singleton anti-range like ~[0,0] is more useful.

Jeff

Reply via email to