diff options
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/tm.texi | 20 | ||||
-rw-r--r-- | gcc/doc/tm.texi.in | 2 |
2 files changed, 15 insertions, 7 deletions
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 3da1d65..037039a 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -6008,12 +6008,20 @@ against lower halves of vectors recursively until the specified mode is reached. The default is @var{mode} which means no splitting. @end deftypefn -@deftypefn {Target Hook} void TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES (vector_sizes *@var{sizes}, bool @var{all}) -If the mode returned by @code{TARGET_VECTORIZE_PREFERRED_SIMD_MODE} is not -the only one that is worth considering, this hook should add all suitable -vector sizes to @var{sizes}, in order of decreasing preference. The first -one should be the size of @code{TARGET_VECTORIZE_PREFERRED_SIMD_MODE}. -If @var{all} is true, add suitable vector sizes even when they are generally +@deftypefn {Target Hook} void TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_MODES (vector_modes *@var{modes}, bool @var{all}) +If using the mode returned by @code{TARGET_VECTORIZE_PREFERRED_SIMD_MODE} +is not the only approach worth considering, this hook should add one mode to +@var{modes} for each useful alternative approach. These modes are then +passed to @code{TARGET_VECTORIZE_RELATED_MODE} to obtain the vector mode +for a given element mode. + +The modes returned in @var{modes} should use the smallest element mode +possible for the vectorization approach that they represent, preferring +integer modes over floating-poing modes in the event of a tie. The first +mode should be the @code{TARGET_VECTORIZE_PREFERRED_SIMD_MODE} for its +element mode. + +If @var{all} is true, add suitable vector modes even when they are generally not expected to be worthwhile. The hook does not need to do anything if the vector returned by diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in index 727b88c..73afd0a 100644 --- a/gcc/doc/tm.texi.in +++ b/gcc/doc/tm.texi.in @@ -4175,7 +4175,7 @@ address; but often a machine-dependent strategy can generate better code. @hook TARGET_VECTORIZE_SPLIT_REDUCTION -@hook TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES +@hook TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_MODES @hook TARGET_VECTORIZE_RELATED_MODE |