https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87762
Bug ID: 87762 Summary: extract_constrain_insn, at recog.c:2206 on s390x Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org Target Milestone: --- Host: x86_64-pc-linux-gnu Target: s390x-linux-gnu Following causes ICE: $ s390x-linux-gnu-gcc /home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/pr59037.c -O /home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/pr59037.c: In function ‘main’: /home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/pr59037.c:12:1: error: insn does not satisfy its constraints: 12 | } | ^ (insn 17 9 14 2 (set (reg/f:DI 1 %r1 [65]) (plus:DI (unspec:DI [ (symbol_ref/u:DI ("*.LC0") [flags 0x2]) (reg:DI 5 %r5) ] UNSPEC_LTREF) (const_int 16 [0x10]))) "/home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/pr59037.c":12:1 1269 {*movdi_64} (expr_list:REG_DEAD (reg:DI 5 %r5) (expr_list:REG_EQUIV (const:DI (plus:DI (symbol_ref/u:DI ("*.LC0") [flags 0x2]) (const_int 16 [0x10]))) (nil)))) during RTL pass: cprop_hardreg /home/marxin/Programming/gcc/gcc/testsuite/c-c++-common/pr59037.c:12:1: internal compiler error: in extract_constrain_insn, at recog.c:2206 0x55d382 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-s390x/build/gcc/rtl-error.c:108 0x55d3a8 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-s390x/build/gcc/rtl-error.c:118 0x55c8ae extract_constrain_insn(rtx_insn*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-s390x/build/gcc/recog.c:2206 0x97b007 copyprop_hardreg_forward_1 /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-s390x/build/gcc/regcprop.c:801 0x97bb74 execute /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-s390x/build/gcc/regcprop.c:1307