[Bug target/38900] ICE: unable to find a register to spill
fxcoudert at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed May 13 20:04:00 GMT 2009
------- Comment #3 from fxcoudert at gcc dot gnu dot org 2009-05-13 20:04 -------
Simpler testcase, confirmed on native i386-pc-mingw32 (trunk, SVN rev. 147441):
$ cat a.c
void __attribute__((dllimport,fastcall)) h(int);
void f()
{
h(2);
h(1);
}
$ gcc -S -O1 a.c -foptimize-sibling-calls
a.c: In function 'f':
a.c:7: error: unable to find a register to spill in class 'CREG'
a.c:7: error: this is the insn:
(call_insn/j 10 8 11 2 a.c:6 (call (mem:QI (reg/f:SI 3 bx [58]) [0 S1 A8])
(const_int 0 [0x0])) 468 {*sibcall_1} (expr_list:REG_DEAD (reg/f:SI 3
bx [58])
(expr_list:REG_DEAD (reg:SI 2 cx)
(nil)))
(expr_list:REG_DEP_TRUE (use (reg:SI 2 cx))
(nil)))
a.c:7: internal compiler error: in spill_failure, at reload1.c:2094
--
fxcoudert at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
GCC build triplet|i686-pc-linux-gnu |
GCC host triplet|i686-pc-linux-gnu |
Last reconfirmed|0000-00-00 00:00:00 |2009-05-13 20:04:31
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38900
More information about the Gcc-bugs
mailing list