[Bug target/63783] [4.9/5 Regression] [SH] Miscompilation of boolean negation on SH4 using -O2
kkojima at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Nov 9 01:12:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63783
Kazumoto Kojima <kkojima at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |sh*-*-*
Status|UNCONFIRMED |NEW
Known to work| |4.8.3
Keywords| |wrong-code
Last reconfirmed| |2014-11-09
Component|c |target
CC| |kkojima at gcc dot gnu.org,
| |olegendo at gcc dot gnu.org
Ever confirmed|0 |1
Summary|gcc-4.9: Miscompilation of |[4.9/5 Regression] [SH]
|boolean negation on SH4 |Miscompilation of boolean
|using -O2 |negation on SH4 using -O2
Known to fail| |4.9.0
--- Comment #1 from Kazumoto Kojima <kkojima at gcc dot gnu.org> ---
I'd like to add oleg to the CC list.
This is a 4.9/5.0 regression from 4.8. 4.8 compilers generate
the code like
tst r1,r1
movt r1
for condition = !decision_result and we get
not r1,r1
for it with 4.9 and the newer compilers.
It seems that sh_treg_combine phase added at 4.9 does this.
More information about the Gcc-bugs
mailing list