https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99764
Bug ID: 99764 Summary: ICE in extract_insn, at recog.c:2770 Product: gcc Version: 11.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-linux-gnu Target: arm-linux-gnueabi The following fails: $ cat bf16.c void foo(__bf16 b) {} $ arm-linux-gnueabi-gcc bf16.c -c -mcpu=cortex-m1.small-multiply bf16.c: In function ‘foo’: bf16.c:1:21: error: unrecognizable insn: 1 | void foo(__bf16 b) {} | ^ (insn 3 2 4 2 (set (mem/c:BF (reg/f:SI 113) [1 b+0 S2 A16]) (reg:BF 0 r0 [ b ])) "bf16.c":1:20 -1 (nil)) during RTL pass: vregs bf16.c:1:21: internal compiler error: in extract_insn, at recog.c:2770 0x5fea13 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-arm/build/gcc/rtl-error.c:108 0x5fea2f _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-arm/build/gcc/rtl-error.c:116 0x5fdea6 extract_insn(rtx_insn*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-arm/build/gcc/recog.c:2770 0x89833f instantiate_virtual_regs_in_insn /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-arm/build/gcc/function.c:1609 0x89833f instantiate_virtual_regs /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-arm/build/gcc/function.c:1983 0x89833f execute /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-arm/build/gcc/function.c:2032 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.