Lines Matching refs:LI
103 bool lowerInterleavedLoad(LoadInst *LI,
134 LoadInst *LI);
275 LoadInst *LI, SmallVector<Instruction *, 32> &DeadInsts) { in lowerInterleavedLoad() argument
276 if (!LI->isSimple() || isa<ScalableVectorType>(LI->getType())) in lowerInterleavedLoad()
290 for (auto *User : LI->users()) { in lowerInterleavedLoad()
319 cast<FixedVectorType>(LI->getType())->getNumElements(); in lowerInterleavedLoad()
352 if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(0) == LI) in lowerInterleavedLoad()
354 if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(1) == LI) in lowerInterleavedLoad()
364 replaceBinOpShuffles(BinOpShuffles.getArrayRef(), Shuffles, LI); in lowerInterleavedLoad()
366 LLVM_DEBUG(dbgs() << "IA: Found an interleaved load: " << *LI << "\n"); in lowerInterleavedLoad()
369 if (!TLI->lowerInterleavedLoad(LI, Shuffles, Indices, Factor)) { in lowerInterleavedLoad()
376 DeadInsts.push_back(LI); in lowerInterleavedLoad()
382 SmallVectorImpl<ShuffleVectorInst *> &Shuffles, LoadInst *LI) { in replaceBinOpShuffles() argument
404 if (NewSVI1->getOperand(0) == LI) in replaceBinOpShuffles()
406 if (NewSVI2->getOperand(0) == LI) in replaceBinOpShuffles()
505 LoadInst *LI = dyn_cast<LoadInst>(DI->getOperand(0)); in lowerDeinterleaveIntrinsic() local
507 if (!LI || !LI->hasOneUse() || !LI->isSimple()) in lowerDeinterleaveIntrinsic()
513 if (!TLI->lowerDeinterleaveIntrinsicToLoad(DI, LI)) in lowerDeinterleaveIntrinsic()
518 DeadInsts.push_back(LI); in lowerDeinterleaveIntrinsic()
550 if (auto *LI = dyn_cast<LoadInst>(&I)) in runOnFunction() local
551 Changed |= lowerInterleavedLoad(LI, DeadInsts); in runOnFunction()