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

            Bug ID: 117486
           Summary: [15 Regression] ICE: in vect_build_slp_tree_2, at
                    tree-vect-slp.cc:2027
           Product: gcc
           Version: 15.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: ---

Testcase:
int a;
extern int d[];
extern int b[];
extern _Bool c[];
extern char h[];
int main() {
  for (int i = 0; i < -18446744073709551493ULL; i += 4)
    if (h[i] || c[i]) {
      a = d[i];
      b[i] = d[i - 3];
    }
}


Command/backtrace:
> /scratch/tc-testing/tc-compiler-fuzz-trunk/build-gcv/bin/riscv64-unknown-linux-gnu-gcc
>  -I/scratch/tc-testing/compiler-fuzz-ci/csmith-build/include -fsigned-char 
> -fno-strict-aliasing -fwrapv -march=rv64gcv_zvl256b -O3 red.c -o rv64gcv.out
during GIMPLE pass: vect
red.c: In function 'main':
red.c:6:5: internal compiler error: in vect_build_slp_tree_2, at
tree-vect-slp.cc:2027
    6 | int main() {
      |     ^~~~
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
0xb71971 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2027
0x16e55eb vect_build_slp_tree
        ../../../gcc/gcc/tree-vect-slp.cc:1806
0x16dff17 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2743
0x16e55eb vect_build_slp_tree
        ../../../gcc/gcc/tree-vect-slp.cc:1806
0x16dff17 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2743
0x16e55eb vect_build_slp_tree
        ../../../gcc/gcc/tree-vect-slp.cc:1806
0x16dff17 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2743
0x16e55eb vect_build_slp_tree
        ../../../gcc/gcc/tree-vect-slp.cc:1806
0x16e0be8 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2077
0x16e55eb vect_build_slp_tree
        ../../../gcc/gcc/tree-vect-slp.cc:1806
0x16dff17 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2743
0x16e55eb vect_build_slp_tree
        ../../../gcc/gcc/tree-vect-slp.cc:1806
0x16e6afb vect_build_slp_instance
        ../../../gcc/gcc/tree-vect-slp.cc:3851
0x16ec51c vect_analyze_slp(vec_info*, unsigned int, bool)
        ../../../gcc/gcc/tree-vect-slp.cc:4731
0x16b662a vect_analyze_loop_2
        ../../../gcc/gcc/tree-vect-loop.cc:2885
0x16b7ca3 vect_analyze_loop_1
        ../../../gcc/gcc/tree-vect-loop.cc:3454
0x16b8411 vect_analyze_loop(loop*, gimple*, vec_info_shared*)
        ../../../gcc/gcc/tree-vect-loop.cc:3614
0x1706b97 try_vectorize_loop_1
        ../../../gcc/gcc/tree-vectorizer.cc:1072
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.

Found via fuzzer

Tested using g4473cf8409f

Assertion triggered:
https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/tree-vect-slp.cc;h=97c362d24f8d3f483c455876edc280097385f70a;hb=HEAD#l2027

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

Reply via email to