diff options
Diffstat (limited to 'gcc/doc/md.texi')
-rw-r--r-- | gcc/doc/md.texi | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi index 6e7a55a34ec..9f840b00d1d 100644 --- a/gcc/doc/md.texi +++ b/gcc/doc/md.texi @@ -3465,6 +3465,34 @@ operand 1 is new value of field and operand 2 specify the field index. Extract given field from the vector value. Operand 1 is the vector, operand 2 specify field index and operand 0 place to store value into. +@cindex @code{vec_extract_even@var{m}} instruction pattern +@item @samp{vec_extract_even@var{m}} +Extract even elements from the input vectors (operand 1 and operand 2). +The even elements of operand 2 are concatenated to the even elements of operand +1 in their original order. The result is stored in operand 0. +The output and input vectors should have the same modes. + +@cindex @code{vec_extract_odd@var{m}} instruction pattern +@item @samp{vec_extract_odd@var{m}} +Extract odd elements from the input vectors (operand 1 and operand 2). +The odd elements of operand 2 are concatenated to the odd elements of operand +1 in their original order. The result is stored in operand 0. +The output and input vectors should have the same modes. + +@cindex @code{vec_interleave_high@var{m}} instruction pattern +@item @samp{vec_interleave_high@var{m}} +Merge high elements of the two input vectors into the output vector. The output +and input vectors should have the same modes (@code{N} elements). The high +@code{N/2} elements of the first input vector are interleaved with the high +@code{N/2} elements of the second input vector. + +@cindex @code{vec_interleave_low@var{m}} instruction pattern +@item @samp{vec_interleave_low@var{m}} +Merge low elements of the two input vectors into the output vector. The output +and input vectors should have the same modes (@code{N} elements). The low +@code{N/2} elements of the first input vector are interleaved with the low +@code{N/2} elements of the second input vector. + @cindex @code{vec_init@var{m}} instruction pattern @item @samp{vec_init@var{m}} Initialize the vector to given values. Operand 0 is the vector to initialize |