Maintain LC SSA when doing SVE vectorization
authorRichard Biener <rguenther@suse.de>
Mon, 4 Jul 2022 12:58:41 +0000 (14:58 +0200)
committerRichard Biener <rguenther@suse.de>
Tue, 5 Jul 2022 10:55:32 +0000 (12:55 +0200)
commit7f4028ae9bbbd35bff34738d5e2f9b6810242ba7
treee78e8064e82f007e6c4ee01a7b6ff34856f6644b
parent510ac273a785361f7c8f24e4815bfb477a6a2e07
Maintain LC SSA when doing SVE vectorization

The final loop IV use after the loop has that not in LC SSA
(and inserts not simplified _2 = _3 - 0 stmts).  In particular
since it splits the exit edge when there's a virtual PHI in the
destination it breaks virtual LC SSA form (but likely also
non-virtual).

The following properly inserts LC PHIs instead.

2022-07-04  Richard Biener  <rguenther@suse.de>

* tree-vect-loop-manip.cc (vect_set_loop_condition_normal):
Maintain LC SSA.
gcc/tree-vect-loop-manip.cc