Lines Matching refs:GEPI
8013 static bool tryUnmergingGEPsAcrossIndirectBr(GetElementPtrInst *GEPI, in tryUnmergingGEPsAcrossIndirectBr() argument
8015 BasicBlock *SrcBlock = GEPI->getParent(); in tryUnmergingGEPsAcrossIndirectBr()
8021 if (!GEPSequentialConstIndexed(GEPI)) in tryUnmergingGEPsAcrossIndirectBr()
8023 ConstantInt *GEPIIdx = cast<ConstantInt>(GEPI->getOperand(1)); in tryUnmergingGEPsAcrossIndirectBr()
8029 Value *GEPIOp = GEPI->getOperand(0); in tryUnmergingGEPsAcrossIndirectBr()
8038 if (llvm::none_of(GEPI->users(), [&](User *Usr) { in tryUnmergingGEPsAcrossIndirectBr()
8052 if (Usr == GEPI) in tryUnmergingGEPsAcrossIndirectBr()
8072 if (UGEPI->getSourceElementType() != GEPI->getSourceElementType()) in tryUnmergingGEPsAcrossIndirectBr()
8097 UGEPI->setOperand(0, GEPI); in tryUnmergingGEPsAcrossIndirectBr()
8104 if (!GEPI->isInBounds()) { in tryUnmergingGEPsAcrossIndirectBr()
8291 if (GetElementPtrInst *GEPI = dyn_cast<GetElementPtrInst>(I)) { in optimizeInst() local
8292 if (GEPI->hasAllZeroIndices()) { in optimizeInst()
8294 Instruction *NC = new BitCastInst(GEPI->getOperand(0), GEPI->getType(), in optimizeInst()
8295 GEPI->getName(), GEPI); in optimizeInst()
8296 NC->setDebugLoc(GEPI->getDebugLoc()); in optimizeInst()
8297 replaceAllUsesWith(GEPI, NC, FreshBBs, IsHugeFunc); in optimizeInst()
8299 GEPI, TLInfo, nullptr, in optimizeInst()
8305 if (tryUnmergingGEPsAcrossIndirectBr(GEPI, TTI)) { in optimizeInst()