| /freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | InterleavedAccessPass.cpp | 267 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 D | InterleavedLoadCombinePass.cpp | 670 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 D | ComplexDeinterleavingPass.cpp | 1654 auto *SVI = dyn_cast<ShuffleVectorInst>(RootI); in identifyRoot() local 1655 if (!SVI) in identifyRoot() 1660 if (!isInterleavingMask(SVI->getShuffleMask())) in identifyRoot()
|
| H A D | CodeGenPrepare.cpp | 441 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 D | InstCombineVectorOps.cpp | 551 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 D | InstCombineInternal.h | 175 Instruction *simplifyBinOpSplats(ShuffleVectorInst &SVI); 176 Instruction *visitShuffleVectorInst(ShuffleVectorInst &SVI);
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86InterleavedAccess.cpp | 180 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 D | X86ISelLowering.h | 1566 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | Scalarizer.cpp | 307 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 D | GVNSink.cpp | 354 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I)) in InstructionUseExpr() local 355 ShuffleMask = SVI->getShuffleMask().copy(A); in InstructionUseExpr()
|
| H A D | GVN.cpp | 363 } 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 D | ValueEnumerator.cpp | 157 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 D | DXILValueEnumerator.cpp | 194 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 D | VectorUtils.cpp | 196 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 D | ARMISelLowering.h | 466 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 D | FunctionComparator.cpp | 752 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 D | Instruction.cpp | 753 if (const ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I1)) in hasSameSpecialState() local 754 return SVI->getShuffleMask() == in hasSameSpecialState()
|
| H A D | AsmWriter.cpp | 4547 } 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 D | VectorCombine.cpp | 1540 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 D | AMDGPUInstCombineIntrinsic.cpp | 414 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 D | RISCVISelLowering.h | 817 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
|
| /freebsd-14.2/contrib/llvm-project/clang/lib/CodeGen/ |
| H A D | CGExprScalar.cpp | 1837 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 D | AArch64ISelLowering.h | 681 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
|
| /freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | TargetLowering.h | 2752 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 D | IRTranslator.cpp | 3002 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&U)) in translateShuffleVector() local 3003 Mask = SVI->getShuffleMask(); in translateShuffleVector()
|