diff options
author | Richard Biener <rguenther@suse.de> | 2015-03-11 15:09:51 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2015-03-11 15:09:51 +0000 |
commit | 474b3a7c49a5ccd6a8becb7f7c5ae6c9e74f36ca (patch) | |
tree | 3fe479b5e457a93cff1c8a0f358ceb8b06702dd9 /gcc | |
parent | 25de0a29fb99fb04f25f16016634de912319676f (diff) | |
download | gcc-474b3a7c49a5ccd6a8becb7f7c5ae6c9e74f36ca.zip gcc-474b3a7c49a5ccd6a8becb7f7c5ae6c9e74f36ca.tar.gz gcc-474b3a7c49a5ccd6a8becb7f7c5ae6c9e74f36ca.tar.bz2 |
re PR tree-optimization/65310 (vectorizer uses wrong alignment)
2015-03-11 Richard Biener <rguenther@suse.de>
PR tree-optimization/65310
* tree-sra.c (build_ref_for_offset): Also preserve larger
alignment.
From-SVN: r221348
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-sra.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4a7f788..3e91636 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-03-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/65310 + * tree-sra.c (build_ref_for_offset): Also preserve larger + alignment. + 2015-03-11 Marat Zakirov <m.zakirov@samsung.com> * asan.c (instrument_derefs): Disable instrumentation on asan-globals=0. diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index 3527a47..a49e950 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -1597,7 +1597,7 @@ build_ref_for_offset (location_t loc, tree base, HOST_WIDE_INT offset, misalign = (misalign + offset) & (align - 1); if (misalign != 0) align = (misalign & -misalign); - if (align < TYPE_ALIGN (exp_type)) + if (align != TYPE_ALIGN (exp_type)) exp_type = build_aligned_type (exp_type, align); mem_ref = fold_build2_loc (loc, MEM_REF, exp_type, base, off); |