OSDN Git Service

2010-12-07 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Dec 2010 16:35:24 +0000 (16:35 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Dec 2010 16:35:24 +0000 (16:35 +0000)
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
Reset alignment information.
(bump_vector_ptr): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167556 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/tree-vect-data-refs.c

index 2c92c37..9a94df4 100644 (file)
@@ -2918,7 +2918,14 @@ vect_create_addr_base_for_vector_ref (gimple stmt,
 
   if (DR_PTR_INFO (dr)
       && TREE_CODE (vec_stmt) == SSA_NAME)
-    duplicate_ssa_name_ptr_info (vec_stmt, DR_PTR_INFO (dr));
+    {
+      duplicate_ssa_name_ptr_info (vec_stmt, DR_PTR_INFO (dr));
+      if (offset)
+       {
+         SSA_NAME_PTR_INFO (vec_stmt)->align = 1;
+         SSA_NAME_PTR_INFO (vec_stmt)->misalign = 0;
+       }
+    }
 
   if (vect_print_dump_info (REPORT_DETAILS))
     {
@@ -3308,7 +3315,11 @@ bump_vector_ptr (tree dataref_ptr, gimple ptr_incr, gimple_stmt_iterator *gsi,
 
   /* Copy the points-to information if it exists. */
   if (DR_PTR_INFO (dr))
-    duplicate_ssa_name_ptr_info (new_dataref_ptr, DR_PTR_INFO (dr));
+    {
+      duplicate_ssa_name_ptr_info (new_dataref_ptr, DR_PTR_INFO (dr));
+      SSA_NAME_PTR_INFO (new_dataref_ptr)->align = 1;
+      SSA_NAME_PTR_INFO (new_dataref_ptr)->misalign = 0;
+    }
 
   if (!ptr_incr)
     return new_dataref_ptr;