This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/69040] cris allmodconfig fails
- From: "hp at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 10 Mar 2016 04:04:37 +0000
- Subject: [Bug target/69040] cris allmodconfig fails
- Auto-submitted: auto-generated
- References: <bug-69040-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69040
--- Comment #9 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Sorry, this is a reload bug and I can't give it my undivided attention within
the coming month.
Reload ties itself in a knot and calls back into the movdi expander asking it
to reload a in=(reg:DI 11 r11) out=(mem/j:DI (reg/f:SI 17 mof [749]) [0
_798->from+0 S8 A8]).
I have that much gcc experience that I'm reasonably confident that this is not
a target bug: all the bits are in place for reload to see that that register 16
(mof) is a special register and cannot be used in an address (in a memory
operation; a random bit-pattern like a temporary storage for an address is ok).
My top-of-the-head solution hypothesis (i.e. what I'd try first) is to bisect
trunk to see what commit there fixed or hid this problem there (assuming it had
this problem when the gcc-5-branch was cut), and if it's a fix rather than
unrelated, ask for a back-port.