diff options
author | Richard Biener <rguenther@suse.de> | 2022-07-04 13:53:24 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-07-04 13:56:45 +0200 |
commit | 3769ad4ccea9589b3f7edaef901cb542aa10f49a (patch) | |
tree | 29cc23eb0ebd0a84e4032db3fc3396143bdfddea /gcc/tree-vectorizer.h | |
parent | 683f11843974f0bdf42f79cdcbb0c2b43c7b81b0 (diff) | |
download | gcc-3769ad4ccea9589b3f7edaef901cb542aa10f49a.zip gcc-3769ad4ccea9589b3f7edaef901cb542aa10f49a.tar.gz gcc-3769ad4ccea9589b3f7edaef901cb542aa10f49a.tar.bz2 |
Revert update-ssa assert in vectorizer
The following reverts the just added assert that virtual SSA does not
need updating. It instead goes for a select whitelist of transforms
known to be prone to difficulties with virtual SSA update.
* tree-vect-loop-manip.cc (vect_do_peeling): Revert assert
and update virtual SSA form again. Assert we do so for
a known set of transforms only.
* tree-vectorizer.h (vec_info::any_known_not_updated_vssa): New.
* tree-vect-stmts.cc (vectorizable_load): When vectorizing
using load-lanes allow virtual SSA update.
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 642eb0a..e5fdc9e 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -444,6 +444,10 @@ public: /* Whether the above mapping is complete. */ bool stmt_vec_info_ro; + /* Whether we've done a transform we think OK to not update virtual + SSA form. */ + bool any_known_not_updated_vssa; + /* The SLP graph. */ auto_vec<slp_instance> slp_instances; |