Home | History | Annotate | Download | only in Analysis

Lines Matching refs:Mask

92 static bool isReverseVectorMask(SmallVectorImpl<int> &Mask) {
93 for (unsigned i = 0, MaskSize = Mask.size(); i < MaskSize; ++i)
94 if (Mask[i] > 0 && Mask[i] != (int)(MaskSize - 1 - i))
99 static bool isAlternateVectorMask(SmallVectorImpl<int> &Mask) {
101 unsigned MaskSize = Mask.size();
105 if (Mask[i] < 0)
107 isAlternate = Mask[i] == (int)((i & 1) ? MaskSize + i : i);
116 if (Mask[i] < 0)
118 isAlternate = Mask[i] == (int)((i & 1) ? i : MaskSize + i);
147 SmallVector<int, 32> Mask(SI->getType()->getVectorNumElements(), -1);
149 // Build a mask of 0, 2, ... (left) or 1, 3, ... (right) depending on whether
152 Mask[i] = val;
155 return Mask == ActualMask;
222 // Shuffle mask for pairwise operation must match.
361 // Fill the rest of the mask with -1 for undef.
364 SmallVector<int, 16> Mask = Shuffle->getShuffleMask();
365 if (ShuffleMask != Mask)
488 SmallVector<int, 16> Mask = Shuffle->getShuffleMask();
490 if (NumVecElems == Mask.size()) {
491 if (isReverseVectorMask(Mask))
494 if (isAlternateVectorMask(Mask))