[Bug tree-optimization/80620] [8 Regression] gcc produces wrong code with -O3

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu May 4 08:57:00 GMT 2017


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80620

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Ugh.  This is really another latent issue with PRE and range-info.  When
PHI-translating {bit_and_expr,a.12_17,4081116982543369} when valueizing
a.12_17 we end up with a leader for a.12_17 as {nop_expr,a.6_10} (as this is
in antic-in).  We then translate that as {nop_expr,a.0_1} for which we have
a.4_4 as "representative" -- but this has range-info that isn't valid in
the context we are looking at, when we the simplify using match.pd we use
that range-info and BOOM!.

The rev. in question just made this more likely to trigger (previously
only match.pd simplifications to constants were considered).


More information about the Gcc-bugs mailing list