ΒΆllvm::Constant* createInterleaveMask(
IRBuilder<>& Builder,
unsigned int VF,
unsigned int NumVecs)
llvm::Constant* createInterleaveMask(
IRBuilder<>& Builder,
unsigned int VF,
unsigned int NumVecs)
Description
Create an interleave shuffle mask. This function creates a shuffle mask for interleaving \p NumVecs vectors of vectorization factor \p VF into a single wide vector. The mask is of the form: < 0, VF, VF * 2, ..., VF * (NumVecs - 1), 1, VF + 1, VF * 2 + 1, ...> For example, the mask for VF = 4 and NumVecs = 2 is: < 0, 4, 1, 5, 2, 6, 3, 7>.
Declared at: llvm/include/llvm/Analysis/VectorUtils.h:336
Parameters
- IRBuilder<>& Builder
- unsigned int VF
- unsigned int NumVecs