https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65693
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2015-04-08 CC| |trippels at gcc dot gnu.org, | |vmakarov at gcc dot gnu.org Component|c++ |rtl-optimization Target Milestone|--- |5.0 Ever confirmed|0 |1 --- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- markus@x4 tmp % cat t.ii int a; unsigned b; void VBoxNsxpXPTC_InvokeByIndex () { unsigned long *c = (unsigned long *) __builtin_alloca (b); a = *c; register int d asm("rdx") = ((int (*) (int, int, int, int, int, int)) 0)(0, 0, d, 0, 0, 0); } markus@x4 tmp % g++ -c t.ii t.ii: In function ‘void VBoxNsxpXPTC_InvokeByIndex()’: t.ii:10:1: error: unable to find a register to spill } ^ t.ii:10:1: error: this is the insn: (insn 10 37 11 2 (parallel [ (set (reg:DI 97) (udiv:DI (reg:DI 95) (reg:DI 107))) (set (reg:DI 108 [98]) (umod:DI (reg:DI 95) (reg:DI 107))) (clobber (reg:CC 17 flags)) ]) t.ii:6 352 {*udivmoddi4} (expr_list:REG_UNUSED (reg:DI 108 [98]) (expr_list:REG_DEAD (reg:DI 107) (expr_list:REG_DEAD (reg:DI 95) (expr_list:REG_UNUSED (reg:CC 17 flags) (nil)))))) t.ii:10: confused by earlier errors, bailing out