[Bug middle-end/63184] [4.9/5/6 Regression] Fails to simplify comparison
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Nov 18 13:22:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63184
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Ok, on trunk we now lower addresses somewhat but that doesn't help as we are
still faced with
i.0_3 = i;
_4 = (sizetype) i.0_3;
_5 = _4 + 1;
_6 = _5 * 4;
_7 = &a[1] + _6;
_8 = i.0_3 + 2;
_12 = (sizetype) _8;
_13 = _12 * 4;
_9 = &a + _13;
if (_7 != _9)
where FRE/PRE cannot see any equivalences, reassoc doesn't do anything and
SLSR does
- _13 = _12 * 4;
+ _13 = _6 + 4;
but that's too late or rather DOM doesn't figure out the equivalence
of &a + _6 + 4 and &a[1] + _6 (not that I see how it could).
More information about the Gcc-bugs
mailing list