This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/34174] gcc produces erroneous asm for movdi
- From: "rask at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 23 Nov 2007 01:33:25 -0000
- Subject: [Bug target/34174] gcc produces erroneous asm for movdi
- References: <bug-34174-15397@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #10 from rask at gcc dot gnu dot org 2007-11-23 01:33 -------
I think both branches of "if (reverse)" could use the exact same code, i.e.
this whole reverse/!reverse idea is bogus on fr30. Suppose our output registers
are r1 and r2 and we receive the address in rN. Then, for any N, this
instruction sequence should work:
...
mov rN, r2
ld @rN, r1
addn 4, r2
ld @r2, r2
...
I found an fr30 simulator in GDB 5.2, so I'm testing the patch for GCC 4.3.
Because this bug is not a regression, it might not be fixed in GCC 4.2.x.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34174