[Bug c/93719] New: Unable to find a register to spill

2020-02-12 Thread etchedpixels at gmail dot com
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

[Bug target/84437] New: long long casting breaks PDP-11 with -m10 model option (includes trivial reproducer)

2018-02-18 Thread etchedpixels at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84437

Bug ID: 84437
   Summary: long long casting breaks PDP-11 with -m10 model option
(includes trivial reproducer)
   Product: gcc
   Version: 7.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: etchedpixels at gmail dot com
  Target Milestone: ---

long long x(int y)
{
return y;
}


pdp11-aout-gcc -m10 -S /tmp/3.c
/tmp/3.c: In function ‘x’:
/tmp/3.c:4:1: error: unrecognizable insn:
 }
 ^
(insn 7 6 8 2 (set (reg:HI 24)
(ashift:HI (reg:HI 23)
(const_int -15 [0xfff1]))) "/tmp/3.c":3 -1
 (nil))
/tmp/3.c:4:1: internal compiler error: in extract_insn, at recog.c:2311
0x8d8b48 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../gcc-7.3.0/gcc/rtl-error.c:108
0x8d8b79 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
../../gcc-7.3.0/gcc/rtl-error.c:116
0x8ae40f extract_insn(rtx_insn*)
../../gcc-7.3.0/gcc/recog.c:2311
0x6fe3f3 instantiate_virtual_regs_in_insn
../../gcc-7.3.0/gcc/function.c:1589
0x6fe3f3 instantiate_virtual_regs
../../gcc-7.3.0/gcc/function.c:1957
0x6fe3f3 execute
../../gcc-7.3.0/gcc/function.c:2006

[Bug target/84438] New: Another code pattern that breaks PDP11 with -m10: including reproducer code

2018-02-18 Thread etchedpixels at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84438

Bug ID: 84438
   Summary: Another code pattern that breaks PDP11 with -m10:
including reproducer code
   Product: gcc
   Version: 7.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: etchedpixels at gmail dot com
  Target Milestone: ---

Created attachment 43447
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43447&action=edit
Example showing the bug

The attached function blows up the compiler with -m10

(gcc 7.3.0 pdp11-aout host is linux 64bit)

tmp/5.c: In function ‘div10quickm’:
/tmp/5.c:18:1: error: unrecognizable insn:
 }
 ^
(insn 11 10 12 2 (set (reg:SI 23 [ _2 ])
(ashift:SI (reg:SI 23 [ _2 ])
(const_int -1 [0x]))) "/tmp/5.c":7 -1
 (expr_list:REG_EQUAL (lshiftrt:SI (reg:SI 37)
(const_int 2 [0x2]))
(nil)))
/tmp/5.c:18:1: internal compiler error: in extract_insn, at recog.c:2311
0x8d8b48 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../gcc-7.3.0/gcc/rtl-error.c:108
0x8d8b79 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
../../gcc-7.3.0/gcc/rtl-error.c:116
0x8ae40f extract_insn(rtx_insn*)
../../gcc-7.3.0/gcc/recog.c:2311
0x6fe3f3 instantiate_virtual_regs_in_insn
../../gcc-7.3.0/gcc/function.c:1589
0x6fe3f3 instantiate_virtual_regs
../../gcc-7.3.0/gcc/function.c:1957
0x6fe3f3 execute
../../gcc-7.3.0/gcc/function.c:2006