http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56885
Igor Zamyatin <izamyatin at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |izamyatin at gmail dot com --- Comment #3 from Igor Zamyatin <izamyatin at gmail dot com> 2013-04-09 06:58:22 UTC --- (In reply to comment #1) > Confirmed with trunk/4.8, but with 4.6/4.7 I see: > > x.c:20:1: error: unable to find a register to spill in class ‘DIREG’ > x.c:20:1: error: this is the insn: > (insn 33 36 35 5 (parallel [ > (set (reg:DI 2 cx [80]) > (const_int 0 [0])) > (set (reg/f:DI 0 ax [78]) > (plus:DI (reg/f:DI 1 dx [77]) > (reg:DI 2 cx [80]))) > (set (mem:BLK (reg/f:DI 1 dx [77]) [0 S15 A8]) > (const_int 0 [0])) > (use (reg:QI 6 bp [81])) > (use (reg:DI 2 cx [80])) > ]) x.c:16 884 {*rep_stosqi} > (expr_list:REG_DEAD (reg/f:DI 1 dx [77]) > (expr_list:REG_UNUSED (reg:DI 2 cx [80]) > (expr_list:REG_UNUSED (reg/f:DI 0 ax [78]) > (nil))))) > x.c:20: confused by earlier errors, bailing out The same error on 4.9 when IRA is turned on