[Bug rtl-optimization/23985] [ARM] Wrong code generation with -O2
rearnsha at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Sep 30 10:13:00 GMT 2005
------- Additional Comments From rearnsha at gcc dot gnu dot org 2005-09-30 10:13 -------
Confirmed by visual inspection of the assembly code.
What seems to be happening is this:
After if conversion we have (pseudo code)
a ? alpha.style = 1
a ? ...
!a ? alpha.style = 2
!a ? ...
inlined_memcpy(newinfo->fig->alpha, alpha, sizeof (alpha)
and this is transformed by the scheduler into
a ? alpha.style = 1
a ? ...
!a ? ...
inlined_memcpy(newinfo->fig->alpha, alpha, sizeof (alpha))
!a ? alpha.style = 2
That is, alpha.style is only set to 2 after alpha has been copied elsewhere.
Disabling sched-2 also avoids the problem.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Known to fail|3.3.1 3.4.3 |3.3.1 3.4.3 3.4.5
Last reconfirmed|0000-00-00 00:00:00 |2005-09-30 10:13:03
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23985
More information about the Gcc-bugs
mailing list