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

            Bug ID: 104782
           Summary: [12 regression] ICE: verify_gimple failed in slp
                    (non-trivial conversion in ‘ssa_name’) with
                    -msve-vector-bits=128
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: acoplan at gcc dot gnu.org
  Target Milestone: ---

The following fails:

$ cat t.c
int a, b, c;
static int d;
short *q;
void f() {
  int *p = &d;
  b = 9;
  for (b = 9; b; b--) {
    a = 2;
    for (c = 2; c <= 9; c++) {
      for (int i = 0; i < 3; i++)
        *p |= (*q)++;
    }
  }
}
$ aarch64-linux-gnu-gcc -c t.c -O3 -march=armv8.2-a+sve -msve-vector-bits=128
t.c: In function ‘f’:
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
    4 | void f() {
      |      ^
vector(8) unsigned short
vector(8) unsigned short
_115 = vect__3.32_61;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_154 = vect__138.33_4;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_193 = vect__177.34_118;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_232 = vect__216.35_139;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_271 = vect__255.36_157;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_310 = vect__294.37_178;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_349 = vect__333.38_196;
t.c:4:6: error: non-trivial conversion in ‘ssa_name’
vector(8) unsigned short
vector(8) unsigned short
_90 = vect__372.39_217;
during GIMPLE pass: slp
t.c:4:6: internal compiler error: verify_gimple failed
0xedc87e verify_gimple_in_cfg(function*, bool)
        /home/alecop01/toolchain/src/gcc/gcc/tree-cfg.cc:5561
0xd66918 execute_function_todo
        /home/alecop01/toolchain/src/gcc/gcc/passes.cc:2084
0xd66a80 do_per_function
        /home/alecop01/toolchain/src/gcc/gcc/passes.cc:1687
0xd66c1b execute_todo
        /home/alecop01/toolchain/src/gcc/gcc/passes.cc:2138
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.

A bisection suggests it started with
r12-7359-g6e80c4f1ad9046b0a7c105660cc7b3dcae0fdb8f :

commit 6e80c4f1ad9046b0a7c105660cc7b3dcae0fdb8f
Author: Richard Biener <rguent...@suse.de>
Date:   Wed Feb 23 10:15:38 2022

    tree-optimization/101636 - CTOR vectorization ICE

Reply via email to