https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95448
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- ranger (EVRP) produces: _1 = a_2(D) & 7; if (_1 != 1) goto <bb 3>; [INV] else goto <bb 4>; [INV] _1 : [irange] int [0, 7] MASK 0x7 VALUE 0x0 2->3 (T) _1 : [irange] int [0, 0][2, 7] MASK 0x7 VALUE 0x0 2->4 (F) _1 : [irange] int [1, 1] MASK 0x7 VALUE 0x0 2->4 (F) a_2(D) : [irange] int [-INF, -7][1, +INF] Notice how there is no mask/value info for a_2 here while there is for _1.