Home
last modified time | relevance | path

Searched refs:SVI (Results 1 – 25 of 30) sorted by relevance

12

/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp267 if (SVI->isInterleave(Factor)) in isReInterleaveMask()
299 return SVI && isa<UndefValue>(SVI->getOperand(1)); in lowerInterleavedLoad()
301 for (auto *SVI : BI->users()) in lowerInterleavedLoad() local
307 if (!SVI || !isa<UndefValue>(SVI->getOperand(1))) in lowerInterleavedLoad()
310 Shuffles.push_back(SVI); in lowerInterleavedLoad()
383 for (auto *SVI : BinOpShuffles) { in replaceBinOpShuffles() local
393 Mask, SVI->getName(), SVI); in replaceBinOpShuffles()
396 SVI->getName(), SVI); in replaceBinOpShuffles()
399 SVI->replaceAllUsesWith(NewBI); in replaceBinOpShuffles()
483 if (!SVI || !SVI->hasOneUse() || isa<ScalableVectorType>(SVI->getType())) in lowerInterleavedStore()
[all …]
H A DInterleavedLoadCombinePass.cpp670 ShuffleVectorInst *SVI = nullptr; member
715 if (SVI) in compute()
716 return computeFromSVI(SVI, Result, DL); in compute()
771 Result.SVI = nullptr; in computeFromBCI()
794 if (!compute(SVI->getOperand(0), LHS, DL)) in computeFromSVI()
834 Result.Is.insert(SVI); in computeFromSVI()
835 Result.SVI = SVI; in computeFromSVI()
838 for (int i : SVI->getShuffleMask()) { in computeFromSVI()
1153 SVIs.insert(VI.SVI); in combine()
1238 Builder.SetInsertPoint(VI.SVI); in combine()
[all …]
H A DComplexDeinterleavingPass.cpp1654 auto *SVI = dyn_cast<ShuffleVectorInst>(RootI); in identifyRoot() local
1655 if (!SVI) in identifyRoot()
1660 if (!isInterleavingMask(SVI->getShuffleMask())) in identifyRoot()
H A DCodeGenPrepare.cpp441 bool optimizeShuffleVectorInst(ShuffleVectorInst *SVI);
7190 bool CodeGenPrepare::optimizeShuffleVectorInst(ShuffleVectorInst *SVI) { in optimizeShuffleVectorInst() argument
7192 if (!match(SVI, m_Shuffle(m_InsertElt(m_Undef(), m_Value(), m_ZeroInt()), in optimizeShuffleVectorInst()
7195 Type *NewType = TLI->shouldConvertSplatType(SVI); in optimizeShuffleVectorInst()
7199 auto *SVIVecType = cast<FixedVectorType>(SVI->getType()); in optimizeShuffleVectorInst()
7207 IRBuilder<> Builder(SVI->getContext()); in optimizeShuffleVectorInst()
7208 Builder.SetInsertPoint(SVI); in optimizeShuffleVectorInst()
7210 cast<Instruction>(SVI->getOperand(0))->getOperand(1), NewType); in optimizeShuffleVectorInst()
7214 replaceAllUsesWith(SVI, BC2, FreshBBs, IsHugeFunc); in optimizeShuffleVectorInst()
7216 SVI, TLInfo, nullptr, in optimizeShuffleVectorInst()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp551 Src = SVI->getOperand(0); in visitExtractElementInst()
554 Src = SVI->getOperand(1); in visitExtractElementInst()
2746 Value *Op0 = SVI.getOperand(0); in simplifyBinOpSplats()
2768 Value *LHS = SVI.getOperand(0); in visitShuffleVectorInst()
2769 Value *RHS = SVI.getOperand(1); in visitShuffleVectorInst()
2847 SVI.commute(); in visitShuffleVectorInst()
2848 return &SVI; in visitShuffleVectorInst()
2872 if (V != &SVI) in visitShuffleVectorInst()
2874 return &SVI; in visitShuffleVectorInst()
2932 for (User *U : SVI.users()) in visitShuffleVectorInst()
[all …]
H A DInstCombineInternal.h175 Instruction *simplifyBinOpSplats(ShuffleVectorInst &SVI);
176 Instruction *visitShuffleVectorInst(ShuffleVectorInst &SVI);
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InterleavedAccess.cpp180 if (auto *SVI = dyn_cast<ShuffleVectorInst>(VecInst)) { in decompose() local
181 Value *Op0 = SVI->getOperand(0); in decompose()
182 Value *Op1 = SVI->getOperand(1); in decompose()
824 ShuffleVectorInst *SVI, in lowerInterleavedStore() argument
829 assert(cast<FixedVectorType>(SVI->getType())->getNumElements() % Factor == in lowerInterleavedStore()
836 auto Mask = SVI->getShuffleMask(); in lowerInterleavedStore()
840 ArrayRef<ShuffleVectorInst *> Shuffles = ArrayRef(SVI); in lowerInterleavedStore()
H A DX86ISelLowering.h1566 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DScalarizer.cpp307 bool visitShuffleVectorInst(ShuffleVectorInst &SVI);
1053 bool ScalarizerVisitor::visitShuffleVectorInst(ShuffleVectorInst &SVI) { in visitShuffleVectorInst() argument
1054 std::optional<VectorSplit> VS = getVectorSplit(SVI.getType()); in visitShuffleVectorInst()
1056 getVectorSplit(SVI.getOperand(0)->getType()); in visitShuffleVectorInst()
1060 Scatterer Op0 = scatter(&SVI, SVI.getOperand(0), *VSOp); in visitShuffleVectorInst()
1061 Scatterer Op1 = scatter(&SVI, SVI.getOperand(1), *VSOp); in visitShuffleVectorInst()
1066 int Selector = SVI.getMaskValue(I); in visitShuffleVectorInst()
1074 gather(&SVI, Res, *VS); in visitShuffleVectorInst()
H A DGVNSink.cpp354 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I)) in InstructionUseExpr() local
355 ShuffleMask = SVI->getShuffleMask().copy(A); in InstructionUseExpr()
H A DGVN.cpp363 } else if (auto *SVI = dyn_cast<ShuffleVectorInst>(I)) { in createExpr() local
364 ArrayRef<int> ShuffleMask = SVI->getShuffleMask(); in createExpr()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Bitcode/Writer/
H A DValueEnumerator.cpp157 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in orderModule() local
158 orderValue(SVI->getShuffleMaskForBitcode(), OM); in orderModule()
286 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in predictUseListOrder() local
287 predictValueUseListOrder(SVI->getShuffleMaskForBitcode(), &F, OM, in predictUseListOrder()
433 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in ValueEnumerator() local
434 EnumerateType(SVI->getShuffleMaskForBitcode()->getType()); in ValueEnumerator()
1049 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in incorporateFunction() local
1050 EnumerateValue(SVI->getShuffleMaskForBitcode()); in incorporateFunction()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/DirectX/DXILWriter/
H A DDXILValueEnumerator.cpp194 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in orderModule() local
195 orderValue(SVI->getShuffleMaskForBitcode(), OM); in orderModule()
326 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in predictUseListOrder() local
327 predictValueUseListOrder(SVI->getShuffleMaskForBitcode(), &F, OM, in predictUseListOrder()
471 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in ValueEnumerator() local
472 EnumerateType(SVI->getShuffleMaskForBitcode()->getType()); in ValueEnumerator()
1054 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in incorporateFunction() local
1055 EnumerateValue(SVI->getShuffleMaskForBitcode()); in incorporateFunction()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/
H A DVectorUtils.cpp196 ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(V); in findScalarElement() local
198 if (SVI && isa<FixedVectorType>(SVI->getType())) { in findScalarElement()
200 cast<FixedVectorType>(SVI->getOperand(0)->getType())->getNumElements(); in findScalarElement()
201 int InEl = SVI->getMaskValue(EltNo); in findScalarElement()
205 return findScalarElement(SVI->getOperand(0), InEl); in findScalarElement()
206 return findScalarElement(SVI->getOperand(1), InEl - LHSWidth); in findScalarElement()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelLowering.h466 Type* shouldConvertSplatType(ShuffleVectorInst* SVI) const override;
668 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DFunctionComparator.cpp752 if (const ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(L)) { in cmpOperations() local
753 ArrayRef<int> LMask = SVI->getShuffleMask(); in cmpOperations()
/freebsd-14.2/contrib/llvm-project/llvm/lib/IR/
H A DInstruction.cpp753 if (const ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I1)) in hasSameSpecialState() local
754 return SVI->getShuffleMask() == in hasSameSpecialState()
H A DAsmWriter.cpp4547 } else if (const ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(&I)) { in printInstruction() local
4548 PrintShuffleMask(Out, SVI->getType(), SVI->getShuffleMask()); in printInstruction()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVectorCombine.cpp1540 auto *SVI = cast<ShuffleVectorInst>(&I); in foldSelectShuffle() local
1542 auto *Op0 = dyn_cast<Instruction>(SVI->getOperand(0)); in foldSelectShuffle()
1543 auto *Op1 = dyn_cast<Instruction>(SVI->getOperand(1)); in foldSelectShuffle()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUInstCombineIntrinsic.cpp414 if (auto *SVI = dyn_cast<ShuffleVectorInst>(V)) in defaultComponentBroadcast() local
415 SVI->getShuffleMask(ShuffleMask); in defaultComponentBroadcast()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelLowering.h817 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
/freebsd-14.2/contrib/llvm-project/clang/lib/CodeGen/
H A DCGExprScalar.cpp1837 static int getMaskElt(llvm::ShuffleVectorInst *SVI, unsigned Idx, in getMaskElt() argument
1839 int MV = SVI->getMaskValue(Idx); in getMaskElt()
1959 llvm::ShuffleVectorInst *SVI = cast<llvm::ShuffleVectorInst>(Init); in VisitInitListExpr() local
1960 Value *SVOp = SVI->getOperand(0); in VisitInitListExpr()
1974 Args.push_back(getMaskElt(SVI, j, Offset)); in VisitInitListExpr()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.h681 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetLowering.h2752 virtual Type* shouldConvertSplatType(ShuffleVectorInst* SVI) const { in shouldConvertSplatType() argument
3032 virtual bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI, in lowerInterleavedStore() argument
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DIRTranslator.cpp3002 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&U)) in translateShuffleVector() local
3003 Mask = SVI->getShuffleMask(); in translateShuffleVector()

12