https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103895
Bug ID: 103895 Summary: [12 Regression] ICE in extract_insn, at recog.c:2769 since r12-6071-g19dcecd963295b02 Product: gcc Version: 12.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: liuhongt at gcc dot gnu.org Target Milestone: --- Host: x86_64-linux-gnu The following ICEs: $ cat reload.c #include <emmintrin.h> typedef float vFloat __attribute__((__vector_size__(16))); float bar_dr; vFloat bar_f1; void bar() { static vFloat m0; vFloat fa1 = _mm_andnot_ps(m0, bar_f1); __attribute__((__vector_size__(2 * sizeof(double)))) double v3 = _mm_cvtps_pd(fa1); vFloat r1 = _mm_cvtpd_ps(v3); _mm_storeu_ps(&bar_dr, r1); } $ gcc reload.c -c -Og -ffloat-store reload.c: In function ‘bar’: reload.c:12:1: error: unrecognizable insn: 12 | } | ^ (insn 21 8 10 2 (set (mem:V4SF (plus:DI (reg/f:DI 19 frame) (const_int -32 [0xffffffffffffffe0])) [1 S16 A128]) (mem:V4SF (plus:DI (reg/f:DI 19 frame) (const_int -16 [0xfffffffffffffff0])) [1 S16 A128])) "/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/12.0.0/include/xmmintrin.h":248:10 -1 (nil)) during RTL pass: ira reload.c:12:1: internal compiler error: in extract_insn, at recog.c:2769 0x75ffd4 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/rtl-error.c:108 0x75fff6 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/rtl-error.c:116 0x75e161 extract_insn(rtx_insn*) /home/marxin/Programming/gcc/gcc/recog.c:2769 0xd2f363 ira_remove_insn_scratches(rtx_insn*, bool, _IO_FILE*, rtx_def* (*)(rtx_def*)) /home/marxin/Programming/gcc/gcc/ira.c:5348 0xd3058e remove_scratches /home/marxin/Programming/gcc/gcc/ira.c:5392 0xd3058e ira /home/marxin/Programming/gcc/gcc/ira.c:5716 0xd3058e execute /home/marxin/Programming/gcc/gcc/ira.c:6075 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.