diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2018-07-31 14:26:10 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2018-07-31 14:26:10 +0000 |
commit | 1e5e6ff5e63127a7a6ae4ee64d08a22a41a021c4 (patch) | |
tree | 30b746c7cef5848d90a741f61bdd947f722a0612 | |
parent | 89fa689a9e898ccb81b966477b3ac4e254461b05 (diff) | |
download | gcc-1e5e6ff5e63127a7a6ae4ee64d08a22a41a021c4.zip gcc-1e5e6ff5e63127a7a6ae4ee64d08a22a41a021c4.tar.gz gcc-1e5e6ff5e63127a7a6ae4ee64d08a22a41a021c4.tar.bz2 |
[39/46] Change STMT_VINFO_UNALIGNED_DR to a dr_vec_info
After previous changes, it makes more sense for STMT_VINFO_UNALIGNED_DR
to be dr_vec_info rather than a data_reference.
2018-07-31 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* 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.
From-SVN: r263154
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/tree-vect-data-refs.c | 2 | ||||
-rw-r--r-- | gcc/tree-vect-loop-manip.c | 4 | ||||
-rw-r--r-- | gcc/tree-vect-loop.c | 3 | ||||
-rw-r--r-- | gcc/tree-vectorizer.h | 2 |
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: |