Lines Matching refs:FirstInst

34   auto *FirstInst = cast<Instruction>(PN.getIncomingValue(0));  in PHIArgMergedDebugLoc()  local
35 Inst->setDebugLoc(FirstInst->getDebugLoc()); in PHIArgMergedDebugLoc()
296 Instruction *FirstInst = cast<Instruction>(PN.getIncomingValue(0)); in FoldPHIArgBinOpIntoPHI() local
297 assert(isa<BinaryOperator>(FirstInst) || isa<CmpInst>(FirstInst)); in FoldPHIArgBinOpIntoPHI()
298 unsigned Opc = FirstInst->getOpcode(); in FoldPHIArgBinOpIntoPHI()
299 Value *LHSVal = FirstInst->getOperand(0); in FoldPHIArgBinOpIntoPHI()
300 Value *RHSVal = FirstInst->getOperand(1); in FoldPHIArgBinOpIntoPHI()
317 if (CI->getPredicate() != cast<CmpInst>(FirstInst)->getPredicate()) in FoldPHIArgBinOpIntoPHI()
334 Value *InLHS = FirstInst->getOperand(0); in FoldPHIArgBinOpIntoPHI()
335 Value *InRHS = FirstInst->getOperand(1); in FoldPHIArgBinOpIntoPHI()
339 FirstInst->getOperand(0)->getName() + ".pn"); in FoldPHIArgBinOpIntoPHI()
347 FirstInst->getOperand(1)->getName() + ".pn"); in FoldPHIArgBinOpIntoPHI()
368 if (CmpInst *CIOp = dyn_cast<CmpInst>(FirstInst)) { in FoldPHIArgBinOpIntoPHI()
375 BinaryOperator *BinOp = cast<BinaryOperator>(FirstInst); in FoldPHIArgBinOpIntoPHI()
389 GetElementPtrInst *FirstInst =cast<GetElementPtrInst>(PN.getIncomingValue(0)); in FoldPHIArgGEPIntoPHI() local
391 SmallVector<Value*, 16> FixedOperands(FirstInst->op_begin(), in FoldPHIArgGEPIntoPHI()
392 FirstInst->op_end()); in FoldPHIArgGEPIntoPHI()
407 if (!GEP || !GEP->hasOneUse() || GEP->getType() != FirstInst->getType() || in FoldPHIArgGEPIntoPHI()
408 GEP->getNumOperands() != FirstInst->getNumOperands()) in FoldPHIArgGEPIntoPHI()
420 for (unsigned op = 0, e = FirstInst->getNumOperands(); op != e; ++op) { in FoldPHIArgGEPIntoPHI()
421 if (FirstInst->getOperand(op) == GEP->getOperand(op)) in FoldPHIArgGEPIntoPHI()
429 if (isa<ConstantInt>(FirstInst->getOperand(op)) || in FoldPHIArgGEPIntoPHI()
433 if (FirstInst->getOperand(op)->getType() !=GEP->getOperand(op)->getType()) in FoldPHIArgGEPIntoPHI()
464 Value *FirstOp = FirstInst->getOperand(i); in FoldPHIArgGEPIntoPHI()
490 GetElementPtrInst::Create(FirstInst->getSourceElementType(), Base, in FoldPHIArgGEPIntoPHI()
738 Instruction *FirstInst = cast<Instruction>(PN.getIncomingValue(0)); in FoldPHIArgOpIntoPHI() local
740 if (isa<GetElementPtrInst>(FirstInst)) in FoldPHIArgOpIntoPHI()
742 if (isa<LoadInst>(FirstInst)) in FoldPHIArgOpIntoPHI()
752 if (isa<CastInst>(FirstInst)) { in FoldPHIArgOpIntoPHI()
753 CastSrcTy = FirstInst->getOperand(0)->getType(); in FoldPHIArgOpIntoPHI()
761 } else if (isa<BinaryOperator>(FirstInst) || isa<CmpInst>(FirstInst)) { in FoldPHIArgOpIntoPHI()
764 ConstantOp = dyn_cast<Constant>(FirstInst->getOperand(1)); in FoldPHIArgOpIntoPHI()
774 if (!I || !I->hasOneUse() || !I->isSameOperationAs(FirstInst)) in FoldPHIArgOpIntoPHI()
786 PHINode *NewPN = PHINode::Create(FirstInst->getOperand(0)->getType(), in FoldPHIArgOpIntoPHI()
790 Value *InVal = FirstInst->getOperand(0); in FoldPHIArgOpIntoPHI()
813 if (CastInst *FirstCI = dyn_cast<CastInst>(FirstInst)) { in FoldPHIArgOpIntoPHI()
820 if (BinaryOperator *BinOp = dyn_cast<BinaryOperator>(FirstInst)) { in FoldPHIArgOpIntoPHI()
831 CmpInst *CIOp = cast<CmpInst>(FirstInst); in FoldPHIArgOpIntoPHI()