This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/24406] EQUIVALENCE broken in 32-bit code with optimization -O2
- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 17 Oct 2005 11:29:54 -0000
- Subject: [Bug fortran/24406] EQUIVALENCE broken in 32-bit code with optimization -O2
- References: <bug-24406-10567@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #1 from pinskia at gcc dot gnu dot org 2005-10-17 11:29 -------
Hmm:
li r2,0
lfd f13,56(r1)
addis r27,r31,ha16(L__gfortran_filename$non_lazy_ptr-"L00000000001$pb")
stw r0,56(r1)
addis r28,r31,ha16(L__gfortran_line$non_lazy_ptr-"L00000000001$pb")
fcmpu cr7,f13,f0
stw r2,60(r1)
We are loading from 56(r1) before storing to it.
We have an aliasing issue.
The union looks correct.
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |alias, wrong-code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24406