aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorAlan Lawrence <alan.lawrence@arm.com>2014-11-13 16:20:13 +0000
committerAlan Lawrence <alalaw01@gcc.gnu.org>2014-11-13 16:20:13 +0000
commit557be5a8767902f204e8afa04551a387eac33a26 (patch)
treeeec657cc746f77494e987ad6b044c2a73effafa8 /gcc/tree-vectorizer.h
parent1c5fd343ded2f26d6bf1e6459d6d7b80cb8564e6 (diff)
downloadgcc-557be5a8767902f204e8afa04551a387eac33a26.zip
gcc-557be5a8767902f204e8afa04551a387eac33a26.tar.gz
gcc-557be5a8767902f204e8afa04551a387eac33a26.tar.bz2
[Vectorizer] Split vect_gen_perm_mask into _checked and _any variants
* tree-vectorizer.h (vect_gen_perm_mask): Remove. (vect_gen_perm_mask_checked, vect_gen_perm_mask_any): New. tree_vec_data_refs.c (vect_permute_load_chain, vec_permute_store_chain, vec_shift_permute_load_chain): Replace vect_gen_perm_mask & assert with vect_gen_perm_mask_checked. * tree-vect-stmts.c (vectorizable_mask_load_store, vectorizable_load): Likewise. (vect_gen_perm_mask_checked): New. (vect_gen_perm_mask): Remove can_vec_perm_p check, rename to... (vect_gen_perm_mask_any): ...this. (perm_mask_for_reverse): Call can_vec_perm_p and vect_gen_perm_mask_checked. From-SVN: r217508
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r--gcc/tree-vectorizer.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index 93aa73e..d817f9f 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -1040,7 +1040,8 @@ extern void vect_get_store_cost (struct data_reference *, int,
extern bool vect_supportable_shift (enum tree_code, tree);
extern void vect_get_vec_defs (tree, tree, gimple, vec<tree> *,
vec<tree> *, slp_tree, int);
-extern tree vect_gen_perm_mask (tree, unsigned char *);
+extern tree vect_gen_perm_mask_any (tree, const unsigned char *);
+extern tree vect_gen_perm_mask_checked (tree, const unsigned char *);
/* In tree-vect-data-refs.c. */
extern bool vect_can_force_dr_alignment_p (const_tree, unsigned int);