Lines Matching defs:VT

226 static MVT scaleVectorType(MVT VT) {
227 unsigned ScalarSize = VT.getVectorElementType().getScalarSizeInBits() * 2;
229 VT.getVectorNumElements() / 2);
254 static void genShuffleBland(MVT VT, ArrayRef<int> Mask,
257 assert(VT.getSizeInBits() >= 256 &&
259 unsigned NumOfElm = VT.getVectorNumElements();
284 static void reorderSubVector(MVT VT, SmallVectorImpl<Value *> &TransposedMatrix,
299 genShuffleBland(VT, VPShuf, OptimizeShuf, (i / Stride) * 16,
324 MVT VT = MVT::v8i16;
335 createUnpackShuffleMask(VT, MaskLowTemp1, true, false);
336 createUnpackShuffleMask(VT, MaskHighTemp1, false, false);
364 MVT VT = MVT::getVectorVT(MVT::i8, NumOfElm);
365 MVT HalfVT = scaleVectorType(VT);
377 createUnpackShuffleMask(VT, MaskLow, true, false);
378 createUnpackShuffleMask(VT, MaskHigh, false, false);
414 if (VT == MVT::v16i8) {
419 reorderSubVector(VT, TransposedMatrix, VecOut, ArrayRef(Concat, 16), NumOfElm,
433 static void createShuffleStride(MVT VT, int Stride,
435 int VectorSize = VT.getSizeInBits();
436 int VF = VT.getVectorNumElements();
447 static void setGroupSize(MVT VT, SmallVectorImpl<int> &SizeInfo) {
448 int VectorSize = VT.getSizeInBits();
449 int VF = VT.getVectorNumElements() / std::max(VectorSize / 128, 1);
470 static void DecodePALIGNRMask(MVT VT, unsigned Imm,
473 unsigned NumElts = VT.getVectorNumElements();
474 unsigned NumLanes = std::max((int)VT.getSizeInBits() / 128, 1);
478 unsigned Offset = Imm * (VT.getScalarSizeInBits() / 8);
555 MVT VT = MVT::getVT(Shuffles[0]->getType());
557 createShuffleStride(VT, 3, VPShuf);
558 setGroupSize(VT, GroupSize);
561 DecodePALIGNRMask(VT, GroupSize[2 - i], VPAlign[i], false);
563 DecodePALIGNRMask(VT, GroupSize[2] + GroupSize[1], VPAlign2, true, true);
564 DecodePALIGNRMask(VT, GroupSize[1], VPAlign3, true, true);
603 static void group2Shuffle(MVT VT, SmallVectorImpl<int> &Mask,
607 int VectorWidth = VT.getSizeInBits();
608 int VF = VT.getVectorNumElements();
638 MVT VT = MVT::getVectorVT(MVT::i8, VecElems);
640 setGroupSize(VT, GroupSize);
643 DecodePALIGNRMask(VT, GroupSize[i], VPAlign[i]);
645 DecodePALIGNRMask(VT, GroupSize[1] + GroupSize[2], VPAlign2, false, true);
646 DecodePALIGNRMask(VT, GroupSize[1], VPAlign3, false, true);
676 unsigned NumOfElm = VT.getVectorNumElements();
677 group2Shuffle(VT, GroupSize, VPShuf);
678 reorderSubVector(VT, TransposedMatrix, Vec, VPShuf, NumOfElm, 3, Builder);