Searched refs:ScaledMask (Results 1 – 6 of 6) sorted by relevance
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | VectorUtils.cpp | 527 SmallVectorImpl<int> &ScaledMask) { in narrowShuffleMaskElts() argument 532 ScaledMask.assign(Mask.begin(), Mask.end()); in narrowShuffleMaskElts() 536 ScaledMask.clear(); in narrowShuffleMaskElts() 543 ScaledMask.push_back(MaskElt < 0 ? MaskElt : Scale * MaskElt + SliceElt); in narrowShuffleMaskElts() 548 SmallVectorImpl<int> &ScaledMask) { in widenShuffleMaskElts() argument 553 ScaledMask.assign(Mask.begin(), Mask.end()); in widenShuffleMaskElts() 562 ScaledMask.clear(); in widenShuffleMaskElts() 563 ScaledMask.reserve(NumElts / Scale); in widenShuffleMaskElts() 577 ScaledMask.push_back(SliceFront); in widenShuffleMaskElts() 586 ScaledMask.push_back(SliceFront / Scale); in widenShuffleMaskElts() [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | VectorUtils.h | 244 SmallVectorImpl<int> &ScaledMask); 262 SmallVectorImpl<int> &ScaledMask); 277 SmallVectorImpl<int> &ScaledMask); 282 SmallVectorImpl<int> &ScaledMask);
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineVectorOps.cpp | 2923 SmallVector<int, 16> ScaledMask; in visitShuffleVectorInst() local 2924 if (scaleShuffleMaskElts(XNumElts, Mask, ScaledMask)) { in visitShuffleVectorInst() 2928 ScaledMask, XType, ShufQuery)) in visitShuffleVectorInst()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86ISelLowering.cpp | 3924 SmallVectorImpl<int> &ScaledMask) { in scaleShuffleElements() argument 3932 llvm::narrowShuffleMaskElts(Scale, Mask, ScaledMask); in scaleShuffleElements() 3938 if (canWidenShuffleElements(Mask, ScaledMask)) { in scaleShuffleElements() 3939 while (ScaledMask.size() > NumDstElts) { in scaleShuffleElements() 3941 if (!canWidenShuffleElements(ScaledMask, WidenedMask)) in scaleShuffleElements() 3943 ScaledMask = std::move(WidenedMask); in scaleShuffleElements() 3952 SmallVector<int, 32> ScaledMask; in canScaleShuffleElements() local 3953 return scaleShuffleElements(Mask, NumDstElts, ScaledMask); in canScaleShuffleElements() 40005 SmallVector<int> ScaledMask, IdentityMask; in combineX86ShuffleChain() local 40008 scaleShuffleElements(Mask, NumElts, ScaledMask)) { in combineX86ShuffleChain() [all …]
|
| H A D | X86InstCombineIntrinsic.cpp | 2930 SmallVector<int> ScaledMask; in instCombineIntrinsic() local 2931 if (!llvm::scaleShuffleMaskElts(NumMaskElts, ShuffleMask, ScaledMask)) in instCombineIntrinsic() 2933 BoolVec = IC.Builder.CreateShuffleVector(BoolVec, ScaledMask); in instCombineIntrinsic()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | DAGCombiner.cpp | 26400 SmallVector<int, 16> ScaledMask; in combineShuffleToZeroExtendVectorInReg() local 26401 getShuffleMaskWithWidestElts(Mask, ScaledMask); in combineShuffleToZeroExtendVectorInReg() 26402 assert(Mask.size() >= ScaledMask.size() && in combineShuffleToZeroExtendVectorInReg() 26403 Mask.size() % ScaledMask.size() == 0 && "Unexpected mask widening."); in combineShuffleToZeroExtendVectorInReg() 26404 int Prescale = Mask.size() / ScaledMask.size(); in combineShuffleToZeroExtendVectorInReg() 26406 NumElts = ScaledMask.size(); in combineShuffleToZeroExtendVectorInReg() 26419 auto isZeroExtend = [NumElts, &ScaledMask](unsigned Scale) { in combineShuffleToZeroExtendVectorInReg() 26422 ArrayRef<int> Mask = ScaledMask; in combineShuffleToZeroExtendVectorInReg() 26447 ShuffleVectorSDNode::commuteMask(ScaledMask); in combineShuffleToZeroExtendVectorInReg()
|