Searched refs:SVI (Results 1 - 18 of 18) sorted by relevance

/external/swiftshader/third_party/LLVM/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp58 static std::vector<int> getShuffleMask(const ShuffleVectorInst *SVI) { argument
59 unsigned NElts = SVI->getType()->getNumElements();
60 if (isa<ConstantAggregateZero>(SVI->getOperand(2)))
62 if (isa<UndefValue>(SVI->getOperand(2)))
66 const ConstantVector *CP = cast<ConstantVector>(SVI->getOperand(2));
108 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(V)) {
110 cast<VectorType>(SVI->getOperand(0)->getType())->getNumElements();
111 int InEl = getShuffleMask(SVI)[EltNo];
115 return FindScalarElement(SVI->getOperand(0), InEl);
116 return FindScalarElement(SVI
447 visitShuffleVectorInst(ShuffleVectorInst &SVI) argument
[all...]
H A DInstCombineCasts.cpp1741 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(Src)) {
1744 if (SVI->hasOneUse() && DestTy->isVectorTy() &&
1746 SVI->getType()->getNumElements() &&
1747 SVI->getType()->getNumElements() ==
1748 cast<VectorType>(SVI->getOperand(0)->getType())->getNumElements()) {
1753 if (((Tmp = dyn_cast<BitCastInst>(SVI->getOperand(0))) &&
1755 ((Tmp = dyn_cast<BitCastInst>(SVI->getOperand(1))) &&
1757 Value *LHS = Builder->CreateBitCast(SVI->getOperand(0), DestTy);
1758 Value *RHS = Builder->CreateBitCast(SVI->getOperand(1), DestTy);
1761 return new ShuffleVectorInst(LHS, RHS, SVI
[all...]
H A DInstCombine.h194 Instruction *visitShuffleVectorInst(ShuffleVectorInst &SVI);
/external/swiftshader/third_party/LLVM/lib/CodeGen/
H A DInlineSpiller.cpp316 const InlineSpiller::SibValueInfo &SVI) {
317 OS << "spill " << PrintReg(SVI.SpillReg) << ':'
318 << SVI.SpillVNI->id << '@' << SVI.SpillVNI->def;
319 if (SVI.SpillMBB)
320 OS << " in BB#" << SVI.SpillMBB->getNumber();
321 if (SVI.AllDefsAreReloads)
323 if (SVI.DefByOrigPHI)
325 if (SVI.KillsSource)
328 for (unsigned i = 0, e = SVI
315 operator <<(raw_ostream &OS, const InlineSpiller::SibValueInfo &SVI) argument
344 propagateSiblingValue(SibValueMap::iterator SVI, VNInfo *VNI) argument
477 SibValueMap::iterator SVI; local
674 const SibValueInfo &SVI = I->second; local
[all...]
/external/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp214 ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(*UI); local
215 if (!SVI || !isa<UndefValue>(SVI->getOperand(1)))
218 Shuffles.push_back(SVI);
260 for (auto SVI : Shuffles)
261 DeadInsts.push_back(SVI);
339 ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(SI->getValueOperand());
340 if (!SVI || !SVI->hasOneUse())
345 if (!isReInterleaveMask(SVI
[all...]
H A DCodeGenPrepare.cpp4705 static bool isBroadcastShuffle(ShuffleVectorInst *SVI) { argument
4706 SmallVector<int, 16> Mask(SVI->getShuffleMask());
4721 bool CodeGenPrepare::optimizeShuffleVectorInst(ShuffleVectorInst *SVI) { argument
4722 BasicBlock *DefBB = SVI->getParent();
4725 if (!TLI || !TLI->isVectorShiftByScalarCheap(SVI->getType()))
4730 if (!isBroadcastShuffle(SVI))
4737 for (User *U : SVI->users()) {
4755 new ShuffleVectorInst(SVI->getOperand(0), SVI->getOperand(1),
4756 SVI
[all...]
/external/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp225 } else if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I)) {
229 int SrcIdx = SVI->getMaskValue(Elt->getZExtValue());
232 SVI->getOperand(0)->getType()->getVectorNumElements();
237 Src = SVI->getOperand(0);
240 Src = SVI->getOperand(1);
904 static bool isShuffleExtractingFromLHS(ShuffleVectorInst &SVI, argument
907 cast<VectorType>(SVI.getOperand(0)->getType())->getNumElements();
919 Instruction *InstCombiner::visitShuffleVectorInst(ShuffleVectorInst &SVI) { argument
920 Value *LHS = SVI.getOperand(0);
921 Value *RHS = SVI
[all...]
H A DInstCombineCasts.cpp1891 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(Src)) {
1894 if (SVI->hasOneUse() && DestTy->isVectorTy() &&
1895 DestTy->getVectorNumElements() == SVI->getType()->getNumElements() &&
1896 SVI->getType()->getNumElements() ==
1897 SVI->getOperand(0)->getType()->getVectorNumElements()) {
1902 if (((Tmp = dyn_cast<BitCastInst>(SVI->getOperand(0))) &&
1904 ((Tmp = dyn_cast<BitCastInst>(SVI->getOperand(1))) &&
1906 Value *LHS = Builder->CreateBitCast(SVI->getOperand(0), DestTy);
1907 Value *RHS = Builder->CreateBitCast(SVI->getOperand(1), DestTy);
1910 return new ShuffleVectorInst(LHS, RHS, SVI
[all...]
H A DInstCombineInternal.h330 Instruction *visitShuffleVectorInst(ShuffleVectorInst &SVI);
/external/llvm/lib/Analysis/
H A DVectorUtils.cpp260 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(V)) {
261 unsigned LHSWidth = SVI->getOperand(0)->getType()->getVectorNumElements();
262 int InEl = SVI->getMaskValue(EltNo);
266 return findScalarElement(SVI->getOperand(0), InEl);
267 return findScalarElement(SVI->getOperand(1), InEl - LHSWidth);
/external/llvm/lib/Transforms/Scalar/
H A DScalarizer.cpp545 bool Scalarizer::visitShuffleVectorInst(ShuffleVectorInst &SVI) { argument
546 VectorType *VT = dyn_cast<VectorType>(SVI.getType());
551 Scatterer Op0 = scatter(&SVI, SVI.getOperand(0));
552 Scatterer Op1 = scatter(&SVI, SVI.getOperand(1));
557 int Selector = SVI.getMaskValue(I);
565 gather(&SVI, Res);
/external/swiftshader/third_party/LLVM/lib/Target/CBackend/
H A DCBackend.cpp318 void visitShuffleVectorInst(ShuffleVectorInst &SVI);
3524 void CWriter::visitShuffleVectorInst(ShuffleVectorInst &SVI) { argument
3526 printType(Out, SVI.getType());
3528 VectorType *VT = SVI.getType();
3534 int SrcVal = SVI.getMaskValue(i);
3538 Value *Op = SVI.getOperand((unsigned)SrcVal >= NumElts);
/external/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.h308 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
H A DAArch64ISelLowering.cpp7136 ShuffleVectorInst *SVI = Shuffles[i]; local
7143 SubVec = Builder.CreateIntToPtr(SubVec, SVI->getType());
7145 SVI->replaceAllUsesWith(SubVec);
7179 ShuffleVectorInst *SVI,
7184 VectorType *VecTy = SVI->getType();
7199 Value *Op0 = SVI->getOperand(0);
7200 Value *Op1 = SVI->getOperand(1);
7178 lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI, unsigned Factor) const argument
/external/llvm/lib/Target/ARM/
H A DARMISelLowering.h458 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
H A DARMISelLowering.cpp12665 ShuffleVectorInst *SVI,
12670 VectorType *VecTy = SVI->getType();
12688 Value *Op0 = SVI->getOperand(0);
12689 Value *Op1 = SVI->getOperand(1);
12664 lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI, unsigned Factor) const argument
/external/clang/lib/CodeGen/
H A DCGExprScalar.cpp1149 static llvm::Constant *getMaskElt(llvm::ShuffleVectorInst *SVI, unsigned Idx, argument
1151 int MV = SVI->getMaskValue(Idx);
1258 llvm::ShuffleVectorInst *SVI = cast<llvm::ShuffleVectorInst>(Init); local
1259 Value *SVOp = SVI->getOperand(0);
1274 Args.push_back(getMaskElt(SVI, j, Offset, CGF.Int32Ty));
/external/llvm/include/llvm/Target/
H A DTargetLowering.h1769 /// \p SVI is the shufflevector to RE-interleave the stored vector.
1771 virtual bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,

Completed in 529 milliseconds