https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93719
Bug ID: 93719 Summary: Unable to find a register to spill Product: gcc Version: 9.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: etchedpixels at gmail dot com Target Milestone: --- Created attachment 47831 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47831&action=edit pdp11-aout-gcc -E capture of the problem file pdp11-aout-gcc -fno-strict-aliasing -fomit-frame-pointer -fno-builtin -msoft-float -Wall -Os -I../../../Library/include -I../../../Library/include/pdp11 -c -o ac.o ac.c ac.c: In function ‘logout’: ac.c:214:1: error: unable to find a register to spill in class ‘GENERAL_REGS’ 214 | } | ^ ac.c:214:1: error: this is the insn: (insn 60 59 61 16 (set (mem:DI (plus:HI (reg/v/f:HI 23 [ terminals.15_1 ]) (const_int 40 [0x28])) [1 tp_43->t_time+0 S8 A16]) (minus:DI (reg:DI 29 [ iftmp.16_11 ]) (mem:DI (plus:HI (reg/v/f:HI 23 [ terminals.15_1 ]) (const_int 40 [0x28])) [1 tp_43->t_time+0 S8 A16]))) "ac.c":207:8 77 {subdi3} (expr_list:REG_DEAD (reg:DI 29 [ iftmp.16_11 ]) (nil))) ac.c:214: confused by earlier errors, bailing out gcc -S of source attached