https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127060

            Bug ID: 127060
           Summary: [14/15/16/17 Regression] RISCV rv64gcv: ICE at -O1
                    during RTL pass: vregs
           Product: gcc
           Version: 17.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: xxs_chy at outlook dot com
  Target Milestone: ---

Reproducer: https://godbolt.org/z/Y39Tc8nsj
Reduced case:
#include <stdint.h>
typedef void *fp_t_10;
uint16_t g3;
void f5(uint16_t a0, uint64_t a2)
{
    __attribute__((__vector_size__(2 * sizeof(int)))) int bc6;
    void *heap7;
    _Bool c9;
lbl_cont9:
    heap7 = &bc6;
lbl_sw14:
    *(fp_t_10 *)heap7 = f5;
    g3 = a0;
    a0 = bc6[a2];
    if (c9) goto lbl_sw14;
    goto lbl_cont9;
}

Dump at -O1 -march=rv64gcv:
<source>: In function 'f5':
<source>:17:1: error: unrecognizable insn:
   17 | }
      | ^
(insn 17 16 18 4 (set (reg/v:V2SI 138 [ bc6 ])
        (subreg:V2SI (symbol_ref:DI ("f5") [flags 0x3] <function_decl
0x76a807c58d00 f5>) 0)) "<source>":12:23 -1
     (nil))
during RTL pass: vregs
<source>:17:1: internal compiler error: in extract_insn, at recog.cc:2894
0x76a80822a28a __libc_start_main
        ???:0
/cefs/38/38f6b180c7b201530bad7509_riscv64_gcc-trunk-20260825/riscv64-unknown-linux-gnu/bin/../libexec/gcc/riscv64-unknown-linux-gnu/17.0.0/cc1
-quiet -imultilib . -iprefix
/cefs/38/38f6b180c7b201530bad7509_riscv64_gcc-trunk-20260825/riscv64-unknown-linux-gnu/bin/../lib/gcc/riscv64-unknown-linux-gnu/17.0.0/
-isysroot
/cefs/38/38f6b180c7b201530bad7509_riscv64_gcc-trunk-20260825/riscv64-unknown-linux-gnu/bin/../riscv64-unknown-linux-gnu/sysroot
<source> -quiet -dumpdir /app/ -dumpbase output.c -dumpbase-ext .c
-march=rv64gcv -mabi=lp64d -misa-spec=20191213 -mtls-dialect=trad
-march=rv64imafdcv_zicsr_zifencei_zmmul_zaamo_zalrsc_zca_zcd_zve32f_zve32x_zve64d_zve64f_zve64x_zvl128b_zvl32b_zvl64b
-g -O1 -fdiagnostics-color=always -fno-verbose-asm -o /app/output.s
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
Compiler returned: 1

Reply via email to