aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2021-10-18 15:55:22 +0200
committerRichard Biener <rguenther@suse.de>2021-10-19 09:12:41 +0200
commitcaab0139761b04226fab14d87c4a4f981d942bbf (patch)
tree59970dad791382ee123f8a40aab415c6bb05e8cc /gcc/tree-vectorizer.h
parentdf592811f950301ed3b10a08e476dad0f2eff26a (diff)
downloadgcc-caab0139761b04226fab14d87c4a4f981d942bbf.zip
gcc-caab0139761b04226fab14d87c4a4f981d942bbf.tar.gz
gcc-caab0139761b04226fab14d87c4a4f981d942bbf.tar.bz2
Remove check_aligned parameter from vect_supportable_dr_alignment
There are two calls with true as parameter, one is only relevant for the case of the misalignment being unknown which means the access is never aligned there, the other is in the peeling hash insert code used conditional on the unlimited cost model which adds an artificial count. But the way it works right now is that it boosts the count if the specific misalignment when not peeling is unsupported - in particular when the access is currently aligned we'll query the backend with a misalign value of zero. I've changed it to boost the peeling when unknown alignment is not supported instead and noted how we could in principle improve this. 2021-10-19 Richard Biener <rguenther@suse.de> * tree-vectorizer.h (vect_supportable_dr_alignment): Remove check_aligned argument. * tree-vect-data-refs.c (vect_supportable_dr_alignment): Likewise. (vect_peeling_hash_insert): Add supportable_if_not_aligned argument and do not call vect_supportable_dr_alignment here. (vect_peeling_supportable): Adjust. (vect_enhance_data_refs_alignment): Compute whether the access is supported with different alignment here and pass that down to vect_peeling_hash_insert. (vect_vfa_access_size): Adjust. * tree-vect-stmts.c (vect_get_store_cost): Likewise. (vect_get_load_cost): Likewise. (get_negative_load_store_type): Likewise. (get_group_load_store_type): Likewise. (get_load_store_type): Likewise.
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r--gcc/tree-vectorizer.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index 4aa84ac..954a0e1 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -1978,7 +1978,7 @@ extern opt_tree vect_get_mask_type_for_stmt (stmt_vec_info, unsigned int = 0);
/* In tree-vect-data-refs.c. */
extern bool vect_can_force_dr_alignment_p (const_tree, poly_uint64);
extern enum dr_alignment_support vect_supportable_dr_alignment
- (vec_info *, dr_vec_info *, tree, bool);
+ (vec_info *, dr_vec_info *, tree);
extern tree vect_get_smallest_scalar_type (stmt_vec_info, tree);
extern opt_result vect_analyze_data_ref_dependences (loop_vec_info, unsigned int *);
extern bool vect_slp_analyze_instance_dependence (vec_info *, slp_instance);