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

            Bug ID: 117483
           Summary: [15 Regression] ICE: in merge, at
                    config/riscv/riscv-vsetvl.cc:2106
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: patrick at rivosinc dot com
  Target Milestone: ---

Testcase:
char a, b, f;
short c, h;
int d[5];
int e;
long *g;
short (*i)[4];
int main() {
  e = 906784;
  char *j = &f;
  short *k = &h;
  for (short l = 0; l < 23; l += 740314495218734 - 29738)
    for (unsigned char m = ~!g[l] - 255; m < 24; m += 3) {
      a = k[m];
      b += j[1] ?: d[6];
      c ^= i[010][l];
    }
}

Command/backtrace:
> /scratch/tc-testing/tc-compiler-fuzz-trunk/build-gcv/bin/riscv64-unknown-linux-gnu-gcc
>  -fsigned-char -fno-strict-aliasing -fwrapv -march=rv64gcv_zvl256b -O3 red.c 
> -o rv64gcv.out
during RTL pass: vsetvl
red.c: In function 'main':
red.c:17:1: internal compiler error: in merge, at
config/riscv/riscv-vsetvl.cc:2106
   17 | }
      | ^
0x2f0de35 internal_error(char const*, ...)
        ../../../gcc/gcc/diagnostic-global-context.cc:518
0xc69f90 fancy_abort(char const*, int, char const*)
        ../../../gcc/gcc/diagnostic.cc:1696
0xb9e239 demand_system::merge(vsetvl_info&, vsetvl_info const&)
        ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:2106
0xb9e239 pre_vsetvl::earliest_fuse_vsetvl_info(int)
        ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:2983
0x18ba5f4 pass_vsetvl::lazy_vsetvl()
        ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:3558
0x18ba96a pass_vsetvl::execute(function*)
        ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:3605
0x18ba96a pass_vsetvl::execute(function*)
        ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:3588
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.

Godbolt: https://godbolt.org/z/q9PsvhMxP

Reply via email to