aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-stmts.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2011-04-14 11:54:43 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2011-04-14 11:54:43 +0000
commit920e81727482ab7c10dd4cadf78e7ff052644762 (patch)
tree1835bb35c9f4039a9323ecc485940d41b6c9a22e /gcc/tree-vect-stmts.c
parent5ce1ee7fdd558b1bb5f02f84cbc435acf8184c9b (diff)
downloadgcc-920e81727482ab7c10dd4cadf78e7ff052644762.zip
gcc-920e81727482ab7c10dd4cadf78e7ff052644762.tar.gz
gcc-920e81727482ab7c10dd4cadf78e7ff052644762.tar.bz2
tree-vectorizer.h (vect_create_data_ref_ptr): Add an extra type parameter.
gcc/ * tree-vectorizer.h (vect_create_data_ref_ptr): Add an extra type parameter. * tree-vect-data-refs.c (vect_create_data_ref_ptr): Add an aggr_type parameter. Generalise code to handle arrays as well as vectors. (vect_setup_realignment): Update accordingly. * tree-vect-stmts.c (vectorizable_store): Likewise. (vectorizable_load): Likewise. From-SVN: r172423
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r--gcc/tree-vect-stmts.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index eeb9223..ffcbd28 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -3581,9 +3581,9 @@ vectorizable_store (gimple stmt, gimple_stmt_iterator *gsi, gimple *vec_stmt,
/* We should have catched mismatched types earlier. */
gcc_assert (useless_type_conversion_p (vectype,
TREE_TYPE (vec_oprnd)));
- dataref_ptr = vect_create_data_ref_ptr (first_stmt, NULL, NULL_TREE,
- &dummy, gsi, &ptr_incr, false,
- &inv_p);
+ dataref_ptr = vect_create_data_ref_ptr (first_stmt, vectype, NULL,
+ NULL_TREE, &dummy, gsi,
+ &ptr_incr, false, &inv_p);
gcc_assert (bb_vinfo || !inv_p);
}
else
@@ -4107,9 +4107,9 @@ vectorizable_load (gimple stmt, gimple_stmt_iterator *gsi, gimple *vec_stmt,
{
/* 1. Create the vector pointer update chain. */
if (j == 0)
- dataref_ptr = vect_create_data_ref_ptr (first_stmt, at_loop, offset,
- &dummy, gsi, &ptr_incr, false,
- &inv_p);
+ dataref_ptr = vect_create_data_ref_ptr (first_stmt, vectype, at_loop,
+ offset, &dummy, gsi,
+ &ptr_incr, false, &inv_p);
else
dataref_ptr =
bump_vector_ptr (dataref_ptr, ptr_incr, gsi, stmt, NULL_TREE);