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

            Bug ID: 117484
           Summary: [15 Regression] ICE: segfault during GIMPLE pass: vect
           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:
extern int a;
extern short b[];
extern signed char c[], d[];
int main() {
  for (long j = 3; j; j += 3)
    if (c[j] ? b[j] : 0) {
      b[j] = d[j - 2];
      a = d[j];
    }
}

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 -fwhole-program 
> -O3 red.c -o rv64gcv.out
during GIMPLE pass: vect
red.c: In function 'main':
red.c:4:5: internal compiler error: Segmentation fault
    4 | int main() {
      |     ^~~~
0x2f0de35 internal_error(char const*, ...)
        ../../../gcc/gcc/diagnostic-global-context.cc:518
0x13b0163 crash_signal
        ../../../gcc/gcc/toplev.cc:323
0x7c71c764251f ???
        ./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0xf8bf81 location_wrapper_p(tree_node const*)
        ../../../gcc/gcc/tree.h:4410
0xf8bf81 tree_strip_any_location_wrapper(tree_node*)
        ../../../gcc/gcc/tree.h:4422
0xf8bf81 operand_compare::operand_equal_p(tree_node const*, tree_node const*,
unsigned int)
        ../../../gcc/gcc/fold-const.cc:3177
0xf8f640 operand_compare::operand_equal_p(tree_node const*, tree_node const*,
unsigned int)
        ../../../gcc/gcc/fold-const.cc:4244
0xf8f640 operand_compare::verify_hash_value(tree_node const*, tree_node const*,
unsigned int, bool*)
        ../../../gcc/gcc/fold-const.cc:4233
0xf8f640 operand_compare::verify_hash_value(tree_node const*, tree_node const*,
unsigned int, bool*)
        ../../../gcc/gcc/fold-const.cc:4225
0xf901ec operand_compare::operand_equal_p(tree_node const*, tree_node const*,
unsigned int)
        ../../../gcc/gcc/fold-const.cc:3173
0xf901ec operand_equal_p(tree_node const*, tree_node const*, unsigned int)
        ../../../gcc/gcc/fold-const.cc:4264
0x16e22d0 vect_build_slp_tree_2
        ../../../gcc/gcc/tree-vect-slp.cc:2678
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
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/nfovE9jr1

Reply via email to