https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98670
Bug ID: 98670 Summary: [11 Regression] ICE in final_scan_insn_1, at final.c:3091 since r11-6628-gb668a06e37f72fd9 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 CC: jakub at gcc dot gnu.org Target Milestone: --- Host: x86_64-linux-gnu Target: x86_64-linux-gnu Reduced from Firefox: $ cat highbd.i typedef short __v8hi __attribute__((__vector_size__(16))); typedef long long __m128i __attribute__((__vector_size__(16))); __m128i _mm_unpacklo_epi16(__m128i __A) { __m128i __B; return (__m128i)__builtin_ia32_punpcklwd128((__v8hi)__A, (__v8hi)__B); } void highbd_comp_avg_sse4_1(); void av1_highbd_jnt_convolve_2d_copy_sse4_1_conv_params() { __m128i data_0 = *(__attribute__((__vector_size__(2 * sizeof(long)))) long long *) av1_highbd_jnt_convolve_2d_copy_sse4_1_conv_params, data_ref_0_lo = _mm_unpacklo_epi16(data_0); highbd_comp_avg_sse4_1(data_ref_0_lo); } $ gcc highbd.i -O2 -msse4.1 -c highbd.i: In function ‘av1_highbd_jnt_convolve_2d_copy_sse4_1_conv_params’: highbd.i:16:1: error: could not split insn 16 | } | ^ (insn:TI 7 17 10 2 (set (reg:V8HI 20 xmm0 [90]) (vec_select:V8HI (vec_concat:V16HI (mem:V8HI (symbol_ref:DI ("av1_highbd_jnt_convolve_2d_copy_sse4_1_conv_params") [flags 0x3] <function_decl 0x7ffff74f3b00 av1_highbd_jnt_convolve_2d_copy_sse4_1_conv_params>) [1 MEM[(vector(2) long long int *)av1_highbd_jnt_convolve_2d_copy_sse4_1_conv_params]+0 S16 A16]) (const_vector:V8HI [ (const_int 0 [0]) repeated x8 ])) (parallel [ (const_int 0 [0]) (const_int 8 [0x8]) (const_int 1 [0x1]) (const_int 9 [0x9]) (const_int 2 [0x2]) (const_int 10 [0xa]) (const_int 3 [0x3]) (const_int 11 [0xb]) ]))) "highbd.i":5:19 4543 {*sse4_1_zero_extendv4hiv4si2_3} (nil)) during RTL pass: final highbd.i:16:1: internal compiler error: in final_scan_insn_1, at final.c:3091 0x730e0b _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/marxin/Programming/gcc/gcc/rtl-error.c:108 0x6c17a0 final_scan_insn_1 /home/marxin/Programming/gcc/gcc/final.c:3091 0xb3bd2f final_scan_insn(rtx_insn*, _IO_FILE*, int, int, int*) /home/marxin/Programming/gcc/gcc/final.c:3170 0xb3be46 final_1 /home/marxin/Programming/gcc/gcc/final.c:2021 0xb3ca95 rest_of_handle_final /home/marxin/Programming/gcc/gcc/final.c:4675 0xb3ca95 execute /home/marxin/Programming/gcc/gcc/final.c:4753 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.