2015-08-03 Richard Biener <rguenther@suse.de>
commit9dd88d41622f5fe96f5a25b7989418079b854116
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Aug 2015 07:13:36 +0000 (3 07:13 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Aug 2015 07:13:36 +0000 (3 07:13 +0000)
tree03864e5caa088bc8f553b9ca5791287f5d2b5a45
parentd1a8d2ac02c05bd4b24981a586762fda6ae6ffff
2015-08-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66917
* tree-vectorizer.h (struct dataref_aux): Add base_element_aligned
field.
(DR_VECT_AUX): New macro.
(set_dr_misalignment): Adjust.
(dr_misalignment): Likewise.
* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
Compute whether the base is at least element aligned.
* tree-vect-stmts.c (ensure_base_align): Adjust.
(vectorizable_store): If the base is not element aligned
preserve alignment of the original access if misalignment is unknown.
(vectorizable_load): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226487 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-vect-data-refs.c
gcc/tree-vect-stmts.c
gcc/tree-vectorizer.h