aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog10
-rw-r--r--gcc/tree-vect-data-refs.c2
-rw-r--r--gcc/tree-vect-loop-manip.c4
-rw-r--r--gcc/tree-vect-loop.c3
-rw-r--r--gcc/tree-vectorizer.h2
5 files changed, 15 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 298e2e9..a9d81d4a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,15 @@
2018-07-31 Richard Sandiford <richard.sandiford@arm.com>
+ * tree-vectorizer.h (_loop_vec_info::unaligned_dr): Change to
+ dr_vec_info.
+ * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Update
+ accordingly.
+ * tree-vect-loop.c (vect_analyze_loop_2): Likewise.
+ * tree-vect-loop-manip.c (get_misalign_in_elems): Likewise.
+ (vect_gen_prolog_loop_niters): Likewise.
+
+2018-07-31 Richard Sandiford <richard.sandiford@arm.com>
+
* tree-vectorizer.h (set_dr_misalignment, dr_misalignment)
(DR_TARGET_ALIGNMENT, aligned_access_p, known_alignment_for_access_p)
(vect_known_alignment_in_bytes, vect_dr_behavior)
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c
index 193575d..aac7fb4 100644
--- a/gcc/tree-vect-data-refs.c
+++ b/gcc/tree-vect-data-refs.c
@@ -2135,7 +2135,7 @@ vect_enhance_data_refs_alignment (loop_vec_info loop_vinfo)
vect_update_misalignment_for_peel (dr_info, dr0_info, npeel);
}
- LOOP_VINFO_UNALIGNED_DR (loop_vinfo) = dr0_info->dr;
+ LOOP_VINFO_UNALIGNED_DR (loop_vinfo) = dr0_info;
if (npeel)
LOOP_VINFO_PEELING_FOR_ALIGNMENT (loop_vinfo) = npeel;
else
diff --git a/gcc/tree-vect-loop-manip.c b/gcc/tree-vect-loop-manip.c
index 58cfebf..e566333 100644
--- a/gcc/tree-vect-loop-manip.c
+++ b/gcc/tree-vect-loop-manip.c
@@ -1560,7 +1560,7 @@ vect_update_ivs_after_vectorizer (loop_vec_info loop_vinfo,
static tree
get_misalign_in_elems (gimple **seq, loop_vec_info loop_vinfo)
{
- dr_vec_info *dr_info = DR_VECT_AUX (LOOP_VINFO_UNALIGNED_DR (loop_vinfo));
+ dr_vec_info *dr_info = LOOP_VINFO_UNALIGNED_DR (loop_vinfo);
stmt_vec_info stmt_info = dr_info->stmt;
tree vectype = STMT_VINFO_VECTYPE (stmt_info);
@@ -1627,7 +1627,7 @@ static tree
vect_gen_prolog_loop_niters (loop_vec_info loop_vinfo,
basic_block bb, int *bound)
{
- dr_vec_info *dr_info = DR_VECT_AUX (LOOP_VINFO_UNALIGNED_DR (loop_vinfo));
+ dr_vec_info *dr_info = LOOP_VINFO_UNALIGNED_DR (loop_vinfo);
tree var;
tree niters_type = TREE_TYPE (LOOP_VINFO_NITERS (loop_vinfo));
gimple_seq stmts = NULL, new_stmts = NULL;
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index dc67dc5..32643d3 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -2142,8 +2142,7 @@ start_over:
/* Niters for peeled prolog loop. */
if (LOOP_VINFO_PEELING_FOR_ALIGNMENT (loop_vinfo) < 0)
{
- dr_vec_info *dr_info
- = DR_VECT_AUX (LOOP_VINFO_UNALIGNED_DR (loop_vinfo));
+ dr_vec_info *dr_info = LOOP_VINFO_UNALIGNED_DR (loop_vinfo);
tree vectype = STMT_VINFO_VECTYPE (dr_info->stmt);
niters_th += TYPE_VECTOR_SUBPARTS (vectype) - 1;
}
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index d45c573..a9c9805 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -437,7 +437,7 @@ typedef struct _loop_vec_info : public vec_info {
tree mask_compare_type;
/* Unknown DRs according to which loop was peeled. */
- struct data_reference *unaligned_dr;
+ struct dr_vec_info *unaligned_dr;
/* peeling_for_alignment indicates whether peeling for alignment will take
place, and what the peeling factor should be: