[Bug tree-optimization/120357] [15/16 Regression] ICE in vect pass "error: definition in block 9 does not dominate use in block 3" since r15-6807-g68326d5d1a593d

2025-05-22 Thread acoplan at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120357

--- Comment #3 from Alex Coplan  ---
This version ICEs with just -O3 on AArch64 (no longer needs -fwhole-program),
and fixes the -Woverflow warning:

char a;
void b(int d, int o, unsigned long long t[][22], int u[]) {
  for (int v = 0; v < d + 1488232569; v += o + 952017568)
for (_Bool w = 0; w < (u[v] < 0) + 1; w = 1)
  a *= 0 != t[w][v];
}
static const int d = -1488232547;
static const int o = 3342949729;
unsigned long long t[2][22];
int u[2];
int main() {
  b(d, o, t, u);
}

[Bug tree-optimization/120357] [15/16 Regression] ICE in vect pass "error: definition in block 9 does not dominate use in block 3" since r15-6807-g68326d5d1a593d

2025-05-22 Thread acoplan at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120357

Alex Coplan  changed:

   What|Removed |Added

   Keywords|needs-bisection |
Summary|[15/16 Regression] RISC-V:  |[15/16 Regression] ICE in
   |ICE in vect pass "error:|vect pass "error:
   |definition in block 9 does  |definition in block 9 does
   |not dominate use in block   |not dominate use in block
   |3"  |3" since
   ||r15-6807-g68326d5d1a593d
 Target|riscv   |riscv, aarch64-*-*

--- Comment #2 from Alex Coplan  ---
I can reproduce it on AArch64 too with just -O3 -fwhole-program.  Taking a
look.