Home
last modified time | relevance | path

Searched refs:SubMask (Results 1 – 9 of 9) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DLiveIntervalCalc.cpp60 LaneBitmask SubMask = SubReg != 0 ? TRI.getSubRegIndexLaneMask(SubReg) in calculate()
70 *Alloc, SubMask, in calculate()
61 LaneBitmask SubMask = SubReg != 0 ? TRI.getSubRegIndexLaneMask(SubReg) calculate() local
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DSLPVectorizer.cpp510 SmallBitVector SubMask(UseMask.size(), false); local
511 Res &= isUndefVector<IsPoisonOnly>(Base, SubMask);
967 /// Shuffles \p Mask in accordance with the given \p SubMask.
970 static void addMask(SmallVectorImpl<int> &Mask, ArrayRef<int> SubMask, in addMask() argument
972 if (SubMask.empty()) in addMask()
975 (!ExtendingManyInputs || SubMask.size() > Mask.size() || in addMask()
977 (SubMask.size() == Mask.size() && in addMask()
980 "SubMask with many inputs support must be larger than the mask."); in addMask()
982 Mask.append(SubMask.begin(), SubMask in addMask()
5030 SmallVector<int> SubMask{ArrayRef(ReusedMask).slice(K, Sz)}; getReorderingData() local
8538 SmallVector<int> SubMask(EltsPerVector, PoisonMaskElem); computeExtractCost() local
8606 ArrayRef<int> SubMask = ArrayRef(Mask).slice(Part * SliceSize, Limit); estimateNodesPermuteCost() local
8928 ArrayRef<int> SubMask = Mask.slice(Part * SliceSize, Limit); adjustExtracts() local
10913 SmallVector<int> SubMask; tryToGatherExtractElements() local
11926 MutableArrayRef<int> SubMask = Mask.slice(Part * SliceSize, Limit); adjustExtracts() local
11966 ArrayRef<int> SubMask = adjustExtracts() local
12638 auto SubMask = ArrayRef(Mask).slice(I * SliceSize, Limit); processBuildVector() local
[all...]
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVTargetTransformInfo.cpp452 SmallVector<int> SubMask(SubVF, PoisonMaskElem); in getShuffleCost() local
455 SubMask.begin(), [&](int I) { in getShuffleCost()
462 SubVecTy, SubMask, CostKind, 0, nullptr); in getShuffleCost()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DInstructions.cpp2257 ArrayRef<int> SubMask = Mask.slice(K, VF); in isOneUseSingleSourceMask() local
2258 if (all_of(SubMask, [](int Idx) { return Idx == PoisonMaskElem; })) in isOneUseSingleSourceMask()
2261 for (int Idx : SubMask) { in isOneUseSingleSourceMask()
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchISelLowering.cpp514 int SubMask[4] = {-1, -1, -1, -1}; in lowerVECTOR_SHUFFLE_VSHUF4I() local
529 if (SubMask[i] == -1) in lowerVECTOR_SHUFFLE_VSHUF4I()
530 SubMask[i] = Idx; in lowerVECTOR_SHUFFLE_VSHUF4I()
533 else if (Idx != -1 && Idx != SubMask[i]) in lowerVECTOR_SHUFFLE_VSHUF4I()
541 int Idx = SubMask[i]; in lowerVECTOR_SHUFFLE_VSHUF4I()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstCombineIntrinsic.cpp3238 APInt SubMask = APInt::getSplat(VWidth, APInt(2, 0x1)); in simplifyDemandedVectorEltsIntrinsic() local
3240 bool IsSubOnly = DemandedElts.isSubsetOf(SubMask); in simplifyDemandedVectorEltsIntrinsic()
H A DX86InstrInfo.cpp8911 unsigned SubMask = (1u << Scale) - 1; in AdjustBlendMask() local
8913 unsigned Sub = (OldMask >> (i * Scale)) & SubMask; in AdjustBlendMask()
8914 if (Sub == SubMask) in AdjustBlendMask()
8921 unsigned SubMask = (1u << Scale) - 1; in AdjustBlendMask() local
8924 NewMask |= (SubMask << (i * Scale)); in AdjustBlendMask()
H A DX86ISelLowering.cpp5950 SmallVector<int, 64> SubMask; in getFauxShuffleMask() local
5958 if (!getTargetShuffleInputs(SubSrc, SubDemand, SubInputs, SubMask, DAG, in getFauxShuffleMask()
5969 if (SubMask.size() != NumSubElts) { in getFauxShuffleMask()
5970 assert(((SubMask.size() % NumSubElts) == 0 || in getFauxShuffleMask()
5971 (NumSubElts % SubMask.size()) == 0) && "Illegal submask scale"); in getFauxShuffleMask()
5972 if ((NumSubElts % SubMask.size()) == 0) { in getFauxShuffleMask()
5973 int Scale = NumSubElts / SubMask.size(); in getFauxShuffleMask()
5975 narrowShuffleMaskElts(Scale, SubMask, ScaledSubMask); in getFauxShuffleMask()
5976 SubMask = ScaledSubMask; in getFauxShuffleMask()
5978 int Scale = SubMask.size() / NumSubElts; in getFauxShuffleMask()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp25056 ArrayRef<int> SubMask = Mask.slice(Begin, NumElemsPerConcat); in partitionShuffleOfConcats() local
25059 if (llvm::all_of(SubMask, IsUndefMaskElt)) { in partitionShuffleOfConcats()
25066 if (IsUndefMaskElt(SubMask[i])) in partitionShuffleOfConcats()
25068 if ((SubMask[i] % (int)NumElemsPerConcat) != i) in partitionShuffleOfConcats()
25070 int EltOpIdx = SubMask[i] / NumElemsPerConcat; in partitionShuffleOfConcats()