All normal RTL expressions can be used with vector modes; they are interpreted as operating on each part of the vector independently. Additionally, there are a few new expressions to describe specific vector operations.
(vec_merge:m vec1 vec2 items)
     const_int; a zero bit indicates the
corresponding element in the result vector is taken from vec2 while
a set bit indicates it is taken from vec1.
     (vec_select:m vec1 selection)
     parallel that contains a
const_int for each of the subparts of the result vector, giving the
number of the source subpart that should be stored into it.
     (vec_concat:m vec1 vec2)
     (vec_const:m subparts)
     parallel that
contains a constant for each of the subparts of the vector.
     (vec_duplicate:m vec)