| /llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombinePHI.cpp | 486 NewBinOp->copyIRFlags(PN.getIncomingValue(0)); in foldPHIArgBinOpIntoPHI() 952 BinOp->copyIRFlags(PN.getIncomingValue(0)); in foldPHIArgOpIntoPHI() 1384 if (isa<Instruction>(PN.getIncomingValue(0)) && in visitPHINode() 1385 isa<Instruction>(PN.getIncomingValue(1)) && in visitPHINode() 1388 PN.getIncomingValue(0)->hasOneUser()) in visitPHINode() 1396 Value *IV0 = PN.getIncomingValue(0); in visitPHINode() 1453 Value *VA = PN.getIncomingValue(I); in visitPHINode() 1479 isa<PHINode>(PN.getIncomingValue(InValNo))) in visitPHINode() 1488 Value *OpVal = PN.getIncomingValue(InValNo); in visitPHINode() 1514 Value *VA = PN.getIncomingValue(I); in visitPHINode() [all …]
|
| H A D | InstructionCombining.cpp | 1177 Value *InVal = PN->getIncomingValue(i); in foldOpIntoPhi() 1239 Constant *InC = dyn_cast<Constant>(PN->getIncomingValue(i)); in foldOpIntoPhi() 1256 InV = Builder.CreateSelect(PN->getIncomingValue(i), TrueVInPred, in foldOpIntoPhi() 1265 if (auto *InC = dyn_cast<Constant>(PN->getIncomingValue(i))) in foldOpIntoPhi() 1274 Value *InV = foldOperationIntoPhiValue(BO, PN->getIncomingValue(i), in foldOpIntoPhi() 1282 InV = Builder.CreateFreeze(PN->getIncomingValue(i), "phi.fr"); in foldOpIntoPhi() 1284 InV = PN->getIncomingValue(i); in foldOpIntoPhi() 1292 if (Constant *InC = dyn_cast<Constant>(PN->getIncomingValue(i))) in foldOpIntoPhi() 1328 if (match(Phi0->getIncomingValue(0), m_ImmConstant(C0))) { in foldBinopWithPhiOperands() 1331 } else if (match(Phi0->getIncomingValue(1), m_ImmConstant(C0))) { in foldBinopWithPhiOperands() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | DemoteRegToStack.cpp | 70 if (PN->getIncomingValue(i) == &I) { in DemoteRegToStack() 131 if (InvokeInst *II = dyn_cast<InvokeInst>(P->getIncomingValue(i))) { in DemotePHIToStack() 135 new StoreInst(P->getIncomingValue(i), Slot, in DemotePHIToStack()
|
| H A D | SSAUpdater.cpp | 85 PHI->getIncomingValue(i)) { in IsEquivalentPHI() 238 Value *getIncomingValue() { return PHI->getIncomingValue(idx); } in getIncomingValue() function in llvm::SSAUpdaterTraits::PHI_iterator
|
| H A D | LoopSimplify.cpp | 188 if (PN->getIncomingValue(i) == PN && in findPHIToPartitionLoops() 256 if (PN->getIncomingValue(i) != PN || in separateNestedLoop() 411 Value *IV = PN->getIncomingValue(i); in insertUniqueBackedgeBlock() 428 PN->setIncomingValue(0, PN->getIncomingValue(PreheaderIdx)); in insertUniqueBackedgeBlock()
|
| H A D | LoopVersioning.cpp | 140 if (PN->getIncomingValue(0) == Inst) { in addPHINodes() 165 Value *ClonedValue = PN->getIncomingValue(0); in addPHINodes()
|
| H A D | BasicBlockUtils.cpp | 149 if (PN->getIncomingValue(0) != PN) in FoldSingleEntryPHINodes() 150 PN->replaceAllUsesWith(PN->getIncomingValue(0)); in FoldSingleEntryPHINodes() 228 if (!isa<PHINode>(PN.getIncomingValue(0)) || in MergeBlockIntoPredecessor() 229 cast<PHINode>(PN.getIncomingValue(0))->getParent() != BB) in MergeBlockIntoPredecessor() 230 IncomingValues.push_back(PN.getIncomingValue(0)); in MergeBlockIntoPredecessor() 747 Value *V = PN.getIncomingValue(Idx); in createPHIsForSplitLoopExit() 1029 InVal = PN->getIncomingValue(i); in UpdatePHINodes() 1030 else if (InVal != PN->getIncomingValue(i)) { in UpdatePHINodes()
|
| H A D | CanonicalizeFreezeInLoops.cpp | 186 PHI->getOperandNumForIncomingValue(PHI->getIncomingValue(0) == StepI); in run()
|
| /llvm-project-15.0.7/llvm/unittests/Analysis/ |
| H A D | MemorySSATest.cpp | 183 EXPECT_EQ(MergePhi->getIncomingValue(0), EntryStoreAccess); in TEST_F() 184 EXPECT_EQ(MergePhi->getIncomingValue(1), LeftStoreAccess); in TEST_F() 199 EXPECT_EQ(MergePhi->getIncomingValue(1), LeftStoreAccess); in TEST_F() 369 EXPECT_EQ(MergePhi->getIncomingValue(0), SideStoreAccess); in TEST_F() 373 EXPECT_EQ(MergePhi->getIncomingValue(0), NewStoreAccess); in TEST_F() 374 EXPECT_EQ(MergePhi->getIncomingValue(1), NewStoreAccess); in TEST_F() 412 EXPECT_EQ(MergePhi->getIncomingValue(0), SideStoreAccess); in TEST_F() 416 EXPECT_EQ(MergePhi->getIncomingValue(0), SideStoreAccess); in TEST_F() 417 EXPECT_EQ(MergePhi->getIncomingValue(1), SideStoreAccess); in TEST_F() 456 EXPECT_EQ(MergePhi->getIncomingValue(0), SideStoreAccess); in TEST_F() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | CallSiteSplitting.cpp | 429 if (PN.getIncomingValue(0) == PN.getIncomingValue(1)) in isPredicatedOnPHI() 431 if (isa<Constant>(PN.getIncomingValue(0)) && in isPredicatedOnPHI() 432 isa<Constant>(PN.getIncomingValue(1))) in isPredicatedOnPHI()
|
| H A D | LoopInterchange.cpp | 754 return followLCSSA(PHI->getIncomingValue(0)); in followLCSSA() 933 Instruction *IncomingI = dyn_cast<Instruction>(PHI.getIncomingValue(i)); in areOuterLoopExitPHIsSupported() 1308 dyn_cast<Instruction>(CurInductionPHI->getIncomingValue(1))); in transform() 1311 dyn_cast<Instruction>(CurInductionPHI->getIncomingValue(0))); in transform() 1521 auto I = dyn_cast<Instruction>(P.getIncomingValue(0)); in moveLCSSAPhis() 1526 NewPhi->setIncomingValue(0, P.getIncomingValue(0)); in moveLCSSAPhis() 1533 NewPhi->addIncoming(P.getIncomingValue(0), Pred); in moveLCSSAPhis()
|
| H A D | GVNSink.cpp | 238 Ops.push_back({PN->getIncomingBlock(I), PN->getIncomingValue(I)}); in ModelledPHI() 631 return V == PN->getIncomingValue(0); in foldPointlessPHINodes() 634 if (PN->getIncomingValue(0) != PN) in foldPointlessPHINodes() 635 PN->replaceAllUsesWith(PN->getIncomingValue(0)); in foldPointlessPHINodes()
|
| H A D | IndVarSimplify.cpp | 220 auto *InitValueVal = dyn_cast<ConstantFP>(PN->getIncomingValue(IncomingEdge)); in handleFloatingPointIV() 228 auto *Incr = dyn_cast<BinaryOperator>(PN->getIncomingValue(BackEdge)); in handleFloatingPointIV() 482 auto *ExitVal = dyn_cast<PHINode>(PN.getIncomingValue(IncomingValIdx)); in rewriteFirstIterationLoopExitValues() 499 ExitVal->getIncomingValue(PreheaderIdx)); in rewriteFirstIterationLoopExitValues() 759 Value *IncV = Phi->getIncomingValue(Idx); in needsLFTR() 851 Value *IncV = Phi->getIncomingValue(LatchIdx); in AlmostDeadIV() 881 Value *IncV = Phi->getIncomingValue(LatchIdx); in isLoopCounter()
|
| H A D | MergeICmps.cpp | 789 if (isa<ConstantInt>(Phi.getIncomingValue(I))) continue; in processPhi() 795 if (!isa<ICmpInst>(Phi.getIncomingValue(I)) || in processPhi() 796 cast<ICmpInst>(Phi.getIncomingValue(I))->getParent() != in processPhi()
|
| /llvm-project-15.0.7/llvm/examples/IRTransforms/ |
| H A D | SimplifyCFG.cpp | 285 PN.replaceAllUsesWith(PN.getIncomingValue(0)); in mergeIntoSinglePredecessor_v1() 336 PN.replaceAllUsesWith(PN.getIncomingValue(0)); in mergeIntoSinglePredecessor_v2()
|
| /llvm-project-15.0.7/llvm/lib/Target/RISCV/ |
| H A D | RISCVGatherScatterLowering.cpp | 191 unsigned IncrementingBlock = Phi->getIncomingValue(0) == Inc ? 0 : 1; in matchStridedRecurrence() 192 assert(Phi->getIncomingValue(IncrementingBlock) == Inc && in matchStridedRecurrence() 388 assert(BasePhi->getIncomingValue(IncrementingBlock) == Inc && in determineBaseAndStride()
|
| /llvm-project-15.0.7/llvm/lib/Target/ARM/ |
| H A D | MVEGatherScatterLowering.cpp | 821 Offsets = Phi->getIncomingValue(IncrementIndex); in tryCreateIncrementingWBGatScat() 839 Instruction::Shl, Phi->getIncomingValue(1 - IncrementIndex), in tryCreateIncrementingWBGatScat() 893 Instruction::Add, Phi->getIncomingValue(StartIndex), OffsSecondOperand, in pushOutAdd() 899 Phi->addIncoming(Phi->getIncomingValue(IncrementIndex), in pushOutAdd() 920 Phi->getIncomingValue(LoopIncrement == 1 ? 0 : 1), in pushOutMulShl() 1029 int IncrementingBlock = Phi->getIncomingValue(0) == IncInstruction ? 0 : 1; in optimiseOffsets() 1065 NewPhi->addIncoming(Phi->getIncomingValue(IncrementingBlock == 1 ? 0 : 1), in optimiseOffsets()
|
| /llvm-project-15.0.7/llvm/lib/Analysis/ |
| H A D | IVDescriptors.cpp | 1194 Instruction *Inc0 = dyn_cast<Instruction>(ExitPhi->getIncomingValue(0)); in getReductionOpChain() 1195 Instruction *Inc1 = dyn_cast<Instruction>(ExitPhi->getIncomingValue(1)); in getReductionOpChain() 1304 BEValue = Phi->getIncomingValue(0); in isFPInductionPHI() 1305 StartValue = Phi->getIncomingValue(1); in isFPInductionPHI() 1309 BEValue = Phi->getIncomingValue(1); in isFPInductionPHI() 1310 StartValue = Phi->getIncomingValue(0); in isFPInductionPHI()
|
| /llvm-project-15.0.7/llvm/include/llvm/Analysis/ |
| H A D | MemorySSA.h | 544 MemoryAccess *getIncomingValue(unsigned I) const { return getOperand(I); } 596 return getIncomingValue(Idx); 607 setIncomingValue(I, getIncomingValue(E - 1)); 618 if (Pred(getIncomingValue(I), getIncomingBlock(I))) { 1145 return MP->getIncomingValue(ArgNo);
|
| /llvm-project-15.0.7/llvm/lib/Target/BPF/ |
| H A D | BPFCheckAndAdjustIR.cpp | 84 auto *GV = dyn_cast<GlobalVariable>(PN->getIncomingValue(i)); in checkIR()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/ObjCARC/ |
| H A D | ObjCARC.h | 82 auto *PNOpnd = PN.getIncomingValue(I)->stripPointerCasts(); in getEquivalentPHIs()
|
| H A D | ProvenanceAnalysis.cpp | 62 if (related(A->getIncomingValue(i), in relatedPHI()
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | SIAnnotateControlFlow.cpp | 175 if (Phi->getIncomingValue(i) != BoolTrue) in isElse() 179 if (Phi->getIncomingValue(i) != BoolFalse) in isElse()
|
| /llvm-project-15.0.7/llvm/lib/Target/XCore/ |
| H A D | XCoreLowerThreadLocal.cpp | 87 if (PN->getIncomingValue(I) == CE) { in replaceConstantExprOp()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | FunctionLoweringInfo.cpp | 459 Value *V = PN->getIncomingValue(0); in ComputePHILiveOutRegInfo() 495 Value *V = PN->getIncomingValue(i); in ComputePHILiveOutRegInfo()
|