aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-optimize.c
diff options
context:
space:
mode:
authorKeith Besaw <kbesaw@us.ibm.com>2005-05-29 13:14:42 +0000
committerDorit Nuzman <dorit@gcc.gnu.org>2005-05-29 13:14:42 +0000
commit9cf5a7e38d9098ce4961b091f70c40e8eb287e65 (patch)
treee9e4e7917523b632ed676b411c41a27546c3875b /gcc/tree-optimize.c
parent6778b96ce1fa7ca57bb6d95fb40e769abd02734b (diff)
downloadgcc-9cf5a7e38d9098ce4961b091f70c40e8eb287e65.zip
gcc-9cf5a7e38d9098ce4961b091f70c40e8eb287e65.tar.gz
gcc-9cf5a7e38d9098ce4961b091f70c40e8eb287e65.tar.bz2
tree-ssa-alias.c (new_type_alias): New procedure to create a type memory tag for a pointer with a may-alias set...
2005-05-29 Keith Besaw <kbesaw@us.ibm.com> * tree-ssa-alias.c (new_type_alias): New procedure to create a type memory tag for a pointer with a may-alias set determined from a variable declaration. * tree-flow.h: export declaration of new_type_alias * tree-optimize.c (init_tree_optimization_passes): document that pass_may_alias cannot be called after pass_vectorize. * tree-vect-transform (vect_create_data_ref_ptr): Call new_type_alias when an type memory tag isn't available for a reference. (vectorizable_store): Use copy_virtual_operands to update virtual defs in place (so that loop_version can be called). Call mark_for_renaming for the virtual defs in case peeling is done and virtual uses outside the loop need to be updated. From-SVN: r100322
Diffstat (limited to 'gcc/tree-optimize.c')
-rw-r--r--gcc/tree-optimize.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c
index 825c2b1..4d02e55 100644
--- a/gcc/tree-optimize.c
+++ b/gcc/tree-optimize.c
@@ -478,6 +478,9 @@ init_tree_optimization_passes (void)
NEXT_PASS (pass_iv_canon);
NEXT_PASS (pass_if_conversion);
NEXT_PASS (pass_vectorize);
+ /* NEXT_PASS (pass_may_alias) cannot be done again because the
+ vectorizer creates alias relations that are not supported by
+ pass_may_alias. */
NEXT_PASS (pass_lower_vector_ssa);
NEXT_PASS (pass_complete_unroll);
NEXT_PASS (pass_iv_optimize);