Lines Matching refs:Extract
291 auto *Extract = dyn_cast<ExtractElementInst>(User); in lowerInterleavedLoad() local
292 if (Extract && isa<ConstantInt>(Extract->getIndexOperand())) { in lowerInterleavedLoad()
293 Extracts.push_back(Extract); in lowerInterleavedLoad()
425 for (auto *Extract : Extracts) { in tryReplaceExtracts() local
427 auto *IndexOperand = cast<ConstantInt>(Extract->getIndexOperand()); in tryReplaceExtracts()
436 if (!DT->dominates(Shuffle, Extract)) in tryReplaceExtracts()
446 assert(Extract->getOperand(0) == Shuffle->getOperand(0) && in tryReplaceExtracts()
448 ReplacementMap[Extract] = std::make_pair(Shuffle, I); in tryReplaceExtracts()
453 if (ReplacementMap.count(Extract)) in tryReplaceExtracts()
459 if (!ReplacementMap.count(Extract)) in tryReplaceExtracts()
466 auto *Extract = Replacement.first; in tryReplaceExtracts() local
469 Builder.SetInsertPoint(Extract); in tryReplaceExtracts()
470 Extract->replaceAllUsesWith(Builder.CreateExtractElement(Vector, Index)); in tryReplaceExtracts()
471 Extract->eraseFromParent(); in tryReplaceExtracts()