https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83073
Bug ID: 83073 Summary: Range for VR_VARYING | [1, 1] Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org Target Milestone: --- Before r254954, for x | 1 where x is VR_VARYING, we would deduce a VR_ANTI_RANGE ~[0, 0]. Since then, we deduce [-INT_MAX, INT_MAX]. Both make sense, but it is strange that we get something different for VR_VARYING and for a full range, and Richard thinks it is worth looking into (maybe zero_nonzero_bits_from_vr). -O2 -fdump-tree-optimized-all int f(int x){return x|1;}