https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103625
Bug ID: 103625 Summary: ICE: in extract_insn, at recog.c:2769 (error: unrecognizable insn) Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: powerpc-e300c3-linux-gnu gcc 12.0.0 20211205 snapshot (g:c9419faef0bfaf31e6a6f744baa064892e0d105c) ICEs when compiling the following testcase, reduced from gcc/testsuite/gcc.target/powerpc/pr70963.c, w/ -mvsx: #define vector __attribute__((altivec(vector__))) static void test() { vector double x = { 81.0, 76.0 }; vector long long y = { 81, 76 }; vector long long a = __builtin_vec_cts (x, 0); if (!__builtin_vec_vcmpeq_p (2, a, y)) __builtin_abort (); } % powerpc-e300c3-linux-gnu-gcc-12.0.0 -mvsx -c m3jai565.c m3jai565.c: In function 'test': m3jai565.c:11:1: error: unrecognizable insn: 11 | } | ^ (insn 16 15 17 2 (parallel [ (set (reg:CC 106 6) (unspec:CC [ (eq:CC (reg:V2DI 124) (reg:V2DI 125)) ] UNSPEC_PREDICATE)) (set (reg:V2DI 126) (eq:V2DI (reg:V2DI 124) (reg:V2DI 125))) ]) "m3jai565.c":9:7 -1 (nil)) during RTL pass: vregs m3jai565.c:11:1: internal compiler error: in extract_insn, at recog.c:2769 0x6ac6f5 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211205/work/gcc-12-20211205/gcc/rtl-error.c:108 0x6ac715 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211205/work/gcc-12-20211205/gcc/rtl-error.c:116 0x6aad23 extract_insn(rtx_insn*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211205/work/gcc-12-20211205/gcc/recog.c:2769 0xb24c4c instantiate_virtual_regs_in_insn /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211205/work/gcc-12-20211205/gcc/function.c:1660 0xb24c4c instantiate_virtual_regs /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211205/work/gcc-12-20211205/gcc/function.c:1985 0xb24c4c execute /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_p20211205/work/gcc-12-20211205/gcc/function.c:2034