summaryrefslogtreecommitdiff
path: root/gcc/tree-vect-stmts.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2013-01-03 12:34:34 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2013-01-03 12:34:34 +0000
commit59ff1f4af6c2cd84496c7722ff8290634745809d (patch)
tree473846c2d8f4055af981fce9809e4eec4c75c2c2 /gcc/tree-vect-stmts.c
parent6a06584c0c44975e5b555f0fc8532cbe4a8696f0 (diff)
downloadgcc-59ff1f4af6c2cd84496c7722ff8290634745809d.tar.gz
2013-01-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/55857 * tree-vect-stmts.c (vectorizable_load): Do not setup re-alignment for invariant loads. * gcc.dg/vect/pr55857-1.c: New testcase. * gcc.dg/vect/pr55857-2.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194850 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r--gcc/tree-vect-stmts.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index da9f12b5c8c..dfbce969fdb 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -4927,7 +4927,8 @@ vectorizable_load (gimple stmt, gimple_stmt_iterator *gsi, gimple *vec_stmt,
if ((alignment_support_scheme == dr_explicit_realign_optimized
|| alignment_support_scheme == dr_explicit_realign)
- && !compute_in_loop)
+ && !compute_in_loop
+ && !integer_zerop (DR_STEP (dr)))
{
msq = vect_setup_realignment (first_stmt, gsi, &realignment_token,
alignment_support_scheme, NULL_TREE,