This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/15482] New: can't find a register in class `GENERAL_REGS' while reloading `asm'
- From: "pbrook at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 16 May 2004 22:53:11 -0000
- Subject: [Bug rtl-optimization/15482] New: can't find a register in class `GENERAL_REGS' while reloading `asm'
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Compiling the following code with arm-none-elf-gcc -O2 -fno-apcs-frame gives
"can't find a register in class `GENERAL_REGS' while reloading `asm'"
void bar(int, int, int, int);
int x;
int foo (int a1, int a2, int a3)
{
int b;
__asm volatile("mov %0, #0":"=r" (b)::
/* Clobber everything except the first 3 argument registers. */
, "r3", "r4", "r5", "r6", "r7"
, "r8", "r9", "sl","ip", "lr", "fp");
x = b;
bar(a1, a2, a3);
}
Similar examples can probably be constructed on other targets that pass
function args in registers.
--
Summary: can't find a register in class `GENERAL_REGS' while
reloading `asm'
Product: gcc
Version: tree-ssa
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P2
Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pbrook at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: arm-none-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15482