The following removes intermediate SSA verification in autopar which isn't expected to succeed after previous changes delaying (virtual) SSA update to the end of the pass.
Pushed as obvious. PR tree-optimization/106737 * tree-parloops.cc (transform_to_exit_first_loop_alt): Do not verify SSA form. * gcc.dg/autopar/pr106737.c: New testcase. --- gcc/testsuite/gcc.dg/autopar/pr106737.c | 18 ++++++++++++++++++ gcc/tree-parloops.cc | 2 -- 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/autopar/pr106737.c diff --git a/gcc/testsuite/gcc.dg/autopar/pr106737.c b/gcc/testsuite/gcc.dg/autopar/pr106737.c new file mode 100644 index 00000000000..3ec8f5dc9e8 --- /dev/null +++ b/gcc/testsuite/gcc.dg/autopar/pr106737.c @@ -0,0 +1,18 @@ +/* { dg-do compile } */ +/* { dg-options "-O -floop-parallelize-all -ftree-parallelize-loops=2 -fno-tree-dce" } */ + +void +foo (int x) +{ + int a[2]; + int b, c = 0; + + for (b = 0; b < 2; ++b) + a[b] = 0; + for (b = 0; b < 2; ++b) + a[b] = 0; + + while (c < 1) + while (x < 1) + ++x; +} diff --git a/gcc/tree-parloops.cc b/gcc/tree-parloops.cc index b070527ee6e..76483fcaaa2 100644 --- a/gcc/tree-parloops.cc +++ b/gcc/tree-parloops.cc @@ -2484,8 +2484,6 @@ transform_to_exit_first_loop_alt (class loop *loop, /* Recalculate dominance info. */ free_dominance_info (CDI_DOMINATORS); calculate_dominance_info (CDI_DOMINATORS); - - checking_verify_ssa (true, true); } /* Tries to moves the exit condition of LOOP to the beginning of its header -- 2.35.3