[Bug target/78438] [7 Regression] incorrect comparison optimization
segher at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Nov 22 02:04:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78438
--- Comment #5 from Segher Boessenkool <segher at gcc dot gnu.org> ---
Why is this wrong? This isn't the same reg 94 (it is reused):
Failed to match this instruction:
(set (mem/c:QI (symbol_ref:DI ("a") [flags 0x2] <var_decl 0x3fffa1d60cf0 a>)
[0 a+0 S1 A8])
(subreg:QI (ashiftrt:SI (reg:SI 93 [ b ])
(const_int 26 [0x1a])) 0))
Successfully matched this instruction:
(set (reg:SI 94)
(ashiftrt:SI (reg:SI 93 [ b ])
(const_int 26 [0x1a])))
Successfully matched this instruction:
(set (mem/c:QI (symbol_ref:DI ("a") [flags 0x2] <var_decl 0x3fffa1d60cf0 a>)
[0 a+0 S1 A8])
(subreg:QI (reg:SI 94) 0))
The low 8 bits of r93 a>> 26 are exactly what we need to store afaics?
More information about the Gcc-bugs
mailing list