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

            Bug ID: 112469
           Summary: [14 Regression] ICE: eliminate_stmt, at
                    tree-ssa-sccvn.cc:6944
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: patrick at rivosinc dot com
  Target Milestone: ---

Created attachment 56548
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56548&action=edit
-freport-bug output

> ./bin/riscv64-unknown-linux-gnu-gcc -march=rv64gcv -S -O3 red.c -freport-bug
during GIMPLE pass: fre
red.c: In function 'g':
red.c:4:5: internal compiler error: in eliminate_stmt, at
tree-ssa-sccvn.cc:6944
    4 | int g() {
      |     ^
0xa1cc99 eliminate_dom_walker::eliminate_stmt(basic_block_def*,
gimple_stmt_iterator*)
        ../../../gcc/gcc/tree-ssa-sccvn.cc:6944
0x13efe11 process_bb
        ../../../gcc/gcc/tree-ssa-sccvn.cc:8152
0x13f1712 do_rpo_vn_1
        ../../../gcc/gcc/tree-ssa-sccvn.cc:8602
0x13f3118 execute
        ../../../gcc/gcc/tree-ssa-sccvn.cc:8760
Please submit a full bug report, with preprocessed source.
Please include the complete backtrace with any bug report.

Creduced testcase:
int a, b, c;
static int *d = &a;
int e(int f) { return f == 0 ?: f; }
int g() {
  a = 1;
  for (; a <= 8; a++) {
    b = e(*d);
    c = -b;
  }
}

Bisected to/first bad commit: r14-4221-g8a87ba0b4fe

-freport-bug output attached

Reply via email to