https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100722
Bug ID: 100722 Summary: ice in extract_insn, at recog.c:2770 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- For this C code: typedef char int8x4_t __attribute__((vector_size(4))); int8x4_t stack_caller_x1; stack_caller() { stack_callee(stack_caller_x1, stack_caller_x1, stack_caller_x1, stack_caller_x1, stack_caller_x1, stack_caller_x1, stack_caller_x1); } recent trunk gcc does this: $ /home/dcb/gcc/results/bin/gcc -c -w bug718.c bug718.c:7:1: error: unrecognizable insn: 7 | } | ^ (insn 13 12 14 2 (set (mem:V4QI (pre_modify:DI (reg/f:DI 7 sp) (plus:DI (reg/f:DI 7 sp) (const_int -8 [0xfffffffffffffff8]))) [0 S4 A32]) (reg:V4QI 82 [ stack_caller_x1.0_1 ])) "bug718.c":4:3 -1 (expr_list:REG_ARGS_SIZE (const_int 16 [0x10]) (nil))) during RTL pass: vregs bug718.c:7:1: internal compiler error: in extract_insn, at recog.c:2770 The problem first seems to occur sometime between 20210517 and 20210518. Git hashes are e91a17fe39c39e98 and 46ca31d65092e5af.