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.

Reply via email to