summaryrefslogtreecommitdiff
path: root/gcc/tree-vect-data-refs.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-06-23 18:52:58 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-06-23 18:52:58 +0000
commit607ce62330b6f831b672ed41e0d108dbf04a377d (patch)
treee821c94a6f82c7b6d9cb8eaef8ccb4b48fcac0d1 /gcc/tree-vect-data-refs.c
parent89d34b2fee3495d03c503ad927751763f63395a5 (diff)
downloadgcc-607ce62330b6f831b672ed41e0d108dbf04a377d.tar.gz
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Use
get_pointer_alignment to see if base isn't sufficiently aligned. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175348 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
-rw-r--r--gcc/tree-vect-data-refs.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c
index c98eb13b225..9a2c5b627e5 100644
--- a/gcc/tree-vect-data-refs.c
+++ b/gcc/tree-vect-data-refs.c
@@ -859,7 +859,9 @@ vect_compute_data_ref_alignment (struct data_reference *dr)
|| (TREE_CODE (base_addr) == SSA_NAME
&& tree_int_cst_compare (ssize_int (TYPE_ALIGN_UNIT (TREE_TYPE (
TREE_TYPE (base_addr)))),
- alignment) >= 0))
+ alignment) >= 0)
+ || (get_pointer_alignment (base_addr, TYPE_ALIGN (vectype))
+ >= TYPE_ALIGN (vectype)))
base_aligned = true;
else
base_aligned = false;