This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RFA: hook doc patch (38/112): TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST, TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE, TARGET_VECTORIZE_BUILTIN_VEC_PERM, TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK
- From: Joern Rennecke <amylaar at spamcop dot net>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 15 Jan 2010 22:00:34 -0500
- Subject: RFA: hook doc patch (38/112): TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST, TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE, TARGET_VECTORIZE_BUILTIN_VEC_PERM, TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK
2010-01-15 Joern Rennecke <amylaar@spamcop.net>
* tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
(TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
(TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
(TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
Index: tm.texi
===================================================================
--- tm.texi (revision 155367)
+++ tm.texi (working copy)
@@ -5679,7 +5709,24 @@ preserved (e.g.@: used only by a reducti
If this hook is defined, the autovectorizer will use it along with the
@code{TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN} target hook when vectorizing
widening multiplication in cases that the order of the results does not have to be
preserved (e.g.@: used only by a reduction computation). Otherwise, the
@code{widen_mult_hi/lo} idioms will be used.
@end deftypefn
+
+@deftypefn {Target Hook} int TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST (bool @var{runtime_test})
+Returns the cost to be added to the overheads involved with executing
+the vectorized version of a loop.
+@end deftypefn
+
+@deftypefn {Target Hook} bool TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE (const_tree @var{type}, bool @var{is_packed})
+Return true if vector alignment is reachable (by peeling N iterations) for the given type.
+@end deftypefn
+
+@deftypefn {Target Hook} tree TARGET_VECTORIZE_BUILTIN_VEC_PERM (tree @var{type}, tree *@var{mask_element_type})
+Target builtin that implements vector permute.
+@end deftypefn
+
+@deftypefn {Target Hook} bool TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK (tree @var{vec_type}, tree @var{mask})
+Return true if a vector created for @code{builtin_vec_perm} is valid.
+@end deftypefn