https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107970
Bug ID: 107970 Summary: ICE in extract_insn, at recog.cc:2791 since r13-2730-gd0c73b6c85677e67 Product: gcc Version: 13.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 CC: crazylht at gmail dot com Target Milestone: --- Host: x86_64-linux-gnu The following crashes: $ cat ice.i float *foo_p; void foo(float *__restrict q) { foo_p[0] = __builtin_truncf(q[0]); foo_p[1] = __builtin_truncf(q[1]); } $ gcc -m32 -Ofast -m3dnowa -mavx512vpopcntdq ice.i -c ice.i: In function ‘foo’: ice.i:7:1: error: unrecognizable insn: 7 | } | ^ (insn 7 6 8 2 (set (reg:V2SF 84 [ vect__3.8 ]) (unspec:V2SF [ (reg:V2SF 86 [ vect__1.7 ]) (const_int 11 [0xb]) ] UNSPEC_ROUND)) "ice.i":5:14 -1 (nil)) during RTL pass: vregs ice.i:7:1: internal compiler error: in extract_insn, at recog.cc:2791 0x75acd4 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/rtl-error.cc:108 0x75acf0 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/rtl-error.cc:116 0x7592b5 extract_insn(rtx_insn*) /home/marxin/Programming/gcc/gcc/recog.cc:2791 0xb88100 instantiate_virtual_regs_in_insn /home/marxin/Programming/gcc/gcc/function.cc:1611 0xb88100 instantiate_virtual_regs /home/marxin/Programming/gcc/gcc/function.cc:1985 0xb88100 execute /home/marxin/Programming/gcc/gcc/function.cc:2034 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.