Home | History | Annotate | Download | only in Analysis

Lines Matching refs:Mask

91 static bool isReverseVectorMask(SmallVectorImpl<int> &Mask) {
92 for (unsigned i = 0, MaskSize = Mask.size(); i < MaskSize; ++i)
93 if (Mask[i] > 0 && Mask[i] != (int)(MaskSize - 1 - i))
98 static bool isAlternateVectorMask(SmallVectorImpl<int> &Mask) {
100 unsigned MaskSize = Mask.size();
104 if (Mask[i] < 0)
106 isAlternate = Mask[i] == (int)((i & 1) ? MaskSize + i : i);
115 if (Mask[i] < 0)
117 isAlternate = Mask[i] == (int)((i & 1) ? i : MaskSize + i);
146 SmallVector<int, 32> Mask(SI->getType()->getVectorNumElements(), -1);
148 // Build a mask of 0, 2, ... (left) or 1, 3, ... (right) depending on whether
151 Mask[i] = val;
154 if (Mask != ActualMask)
224 // Shuffle mask for pairwise operation must match.
363 // Fill the rest of the mask with -1 for undef.
366 SmallVector<int, 16> Mask = Shuffle->getShuffleMask();
367 if (ShuffleMask != Mask)
492 SmallVector<int, 16> Mask = Shuffle->getShuffleMask();
494 if (NumVecElems == Mask.size()) {
495 if (isReverseVectorMask(Mask))
498 if (isAlternateVectorMask(Mask))