diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2018-07-31 14:23:25 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2018-07-31 14:23:25 +0000 |
commit | 78e02b3bbb00fc898c550b88161838eb5dd95806 (patch) | |
tree | b8c2aa33b7aef2b96b2f17210fec46a79c3dabc3 /gcc/tree-vect-loop.c | |
parent | b978758186fa187d52d2c4a02cdc8474d361a0dd (diff) | |
download | gcc-78e02b3bbb00fc898c550b88161838eb5dd95806.zip gcc-78e02b3bbb00fc898c550b88161838eb5dd95806.tar.gz gcc-78e02b3bbb00fc898c550b88161838eb5dd95806.tar.bz2 |
[19/46] Make vect_dr_stmt return a stmt_vec_info
This patch makes vect_dr_stmt return a stmt_vec_info instead of a
gimple stmt. Rather than retain a separate gimple stmt variable
in cases where both existed, the patch replaces uses of the gimple
variable with the uses of the stmt_vec_info. Later patches do this
more generally.
Many things that are keyed off a data_reference would these days
be better keyed off a stmt_vec_info, but it's more convenient
to do that later in the series. The vect_dr_size calls that are
left over do still benefit from this patch.
2018-07-31 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* tree-vectorizer.h (vect_dr_stmt): Return a stmt_vec_info rather
than a gimple stmt.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence)
(vect_slp_analyze_data_ref_dependence, vect_record_base_alignments)
(vect_calculate_target_alignmentm, vect_compute_data_ref_alignment)
(vect_update_misalignment_for_peel, vect_verify_datarefs_alignment)
(vector_alignment_reachable_p, vect_get_data_access_cost)
(vect_get_peeling_costs_all_drs, vect_peeling_hash_get_lowest_cost)
(vect_peeling_supportable, vect_enhance_data_refs_alignment)
(vect_find_same_alignment_drs, vect_analyze_data_refs_alignment)
(vect_analyze_group_access_1, vect_analyze_group_access)
(vect_analyze_data_ref_access, vect_analyze_data_ref_accesses)
(vect_vfa_access_size, vect_small_gap_p, vect_analyze_data_refs)
(vect_supportable_dr_alignment): Remove vinfo_for_stmt from the
result of vect_dr_stmt and use the stmt_vec_info instead of
the associated gimple stmt.
* tree-vect-loop-manip.c (get_misalign_in_elems): Likewise.
(vect_gen_prolog_loop_niters): Likewise.
* tree-vect-loop.c (vect_analyze_loop_2): Likewise.
From-SVN: r263134
Diffstat (limited to 'gcc/tree-vect-loop.c')
-rw-r--r-- | gcc/tree-vect-loop.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c index a542487..3ac4aee 100644 --- a/gcc/tree-vect-loop.c +++ b/gcc/tree-vect-loop.c @@ -2145,8 +2145,7 @@ start_over: if (LOOP_VINFO_PEELING_FOR_ALIGNMENT (loop_vinfo) < 0) { struct data_reference *dr = LOOP_VINFO_UNALIGNED_DR (loop_vinfo); - tree vectype - = STMT_VINFO_VECTYPE (vinfo_for_stmt (vect_dr_stmt (dr))); + tree vectype = STMT_VINFO_VECTYPE (vect_dr_stmt (dr)); niters_th += TYPE_VECTOR_SUBPARTS (vectype) - 1; } else |