Lines Matching refs:SVI
314 if (auto *SVI = dyn_cast<ShuffleVectorInst>(*BI->user_begin())) { in lowerInterleavedLoad() local
315 BinOpShuffles.insert(SVI); in lowerInterleavedLoad()
319 auto *SVI = dyn_cast<ShuffleVectorInst>(User); in lowerInterleavedLoad() local
320 if (!SVI || !isa<UndefValue>(SVI->getOperand(1))) in lowerInterleavedLoad()
323 Shuffles.push_back(SVI); in lowerInterleavedLoad()
381 for (auto SVI : Shuffles) in lowerInterleavedLoad() local
382 DeadInsts.push_back(SVI); in lowerInterleavedLoad()
391 for (auto *SVI : BinOpShuffles) { in tryReplaceBinOpShuffles() local
392 BinaryOperator *BI = cast<BinaryOperator>(SVI->getOperand(0)); in tryReplaceBinOpShuffles()
393 ArrayRef<int> Mask = SVI->getShuffleMask(); in tryReplaceBinOpShuffles()
397 SVI->getName(), SVI); in tryReplaceBinOpShuffles()
400 SVI->getName(), SVI); in tryReplaceBinOpShuffles()
402 BI->getName(), SVI); in tryReplaceBinOpShuffles()
403 SVI->replaceAllUsesWith(NewBI); in tryReplaceBinOpShuffles()
404 LLVM_DEBUG(dbgs() << " Replaced: " << *BI << "\n And : " << *SVI in tryReplaceBinOpShuffles()
407 RecursivelyDeleteTriviallyDeadInstructions(SVI); in tryReplaceBinOpShuffles()
485 auto *SVI = dyn_cast<ShuffleVectorInst>(SI->getValueOperand()); in lowerInterleavedStore() local
486 if (!SVI || !SVI->hasOneUse() || isa<ScalableVectorType>(SVI->getType())) in lowerInterleavedStore()
492 cast<FixedVectorType>(SVI->getOperand(0)->getType())->getNumElements(); in lowerInterleavedStore()
493 if (!isReInterleaveMask(SVI->getShuffleMask(), Factor, MaxFactor, OpNumElts)) in lowerInterleavedStore()
499 if (!TLI->lowerInterleavedStore(SI, SVI, Factor)) in lowerInterleavedStore()
504 DeadInsts.push_back(SVI); in lowerInterleavedStore()