aboutsummaryrefslogtreecommitdiff
path: root/gcc/target.h
diff options
context:
space:
mode:
authorTehila Meyzels <tehila@il.ibm.com>2007-02-11 11:46:07 +0000
committerDorit Nuzman <dorit@gcc.gnu.org>2007-02-11 11:46:07 +0000
commitf57d17f1fc2f31047644ed6f18f1087f65f8f88b (patch)
treee52f73a43ee97fe66d58356fa8f6c7468ab5a0c2 /gcc/target.h
parent1c85c51a47ff6ce4433345fb768c89f7d8e047e6 (diff)
downloadgcc-f57d17f1fc2f31047644ed6f18f1087f65f8f88b.zip
gcc-f57d17f1fc2f31047644ed6f18f1087f65f8f88b.tar.gz
gcc-f57d17f1fc2f31047644ed6f18f1087f65f8f88b.tar.bz2
tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): New target hook.
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): New target hook. * targhooks.c (default_builtin_vectorized_conversion): New. * targhooks.h (default_builtin_vectorized_function): New declaration. * target.h (struct vectorize): Add builtin_conversion field. * tree-vectorizer.h (type_conversion_vec_info_type): New enum stmt_vec_info_type value. (vectorizable_conversion): New declaration. * tree-vect-analyze.c (vect_analyze_operations): Add vectorizable_conversion call. * target-def.h (TARGET_VECTORIZE_BUILTIN_CONVERSION): New. * tree-vect-transform.c (vectorizable_conversion): New function. (vect_transform_stmt): Add case for type_conversion_vec_info_type. * tree-vect-generic.c (expand_vector_operations_1): Consider correct mode. * config/rs6000/rs6000.c (rs6000_builtin_conversion): New. (TARGET_VECTORIZE_BUILTIN_CONVERSION): Defined. (rs6000_expand_builtin): Add handling a case of ALTIVEC_BUILTIN_VCFUX or ALTIVEC_BUILTIN_VCFSX. Co-Authored-By: Dorit Nuzman <dorit@il.ibm.com> Co-Authored-By: Ira Rosen <irar@il.ibm.com> From-SVN: r121818
Diffstat (limited to 'gcc/target.h')
-rw-r--r--gcc/target.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/target.h b/gcc/target.h
index 2d8d69b..e8694f2 100644
--- a/gcc/target.h
+++ b/gcc/target.h
@@ -397,6 +397,10 @@ struct gcc_target
function, or NULL_TREE if not available. */
tree (* builtin_vectorized_function) (unsigned, tree, tree);
+ /* Returns a code for builtin that realizes vectorized version of
+ conversion, or NULL_TREE if not available. */
+ tree (* builtin_conversion) (unsigned, tree);
+
/* Target builtin that implements vector widening multiplication.
builtin_mul_widen_eve computes the element-by-element products
for the even elements, and builtin_mul_widen_odd computes the