/external/llvm/lib/Transforms/Utils/ |
D | SSAUpdater.cpp | 38 SSAUpdater::SSAUpdater(SmallVectorImpl<PHINode*> *NewPHI) in SSAUpdater() 73 static bool IsEquivalentPHI(PHINode *PHI, in IsEquivalentPHI() 129 if (PHINode *SomePhi = dyn_cast<PHINode>(BB->begin())) { in GetValueInMiddleOfBlock() 167 if (isa<PHINode>(BB->begin())) { in GetValueInMiddleOfBlock() 170 PHINode *SomePHI; in GetValueInMiddleOfBlock() 172 (SomePHI = dyn_cast<PHINode>(It)); ++It) { in GetValueInMiddleOfBlock() 179 PHINode *InsertedPHI = PHINode::Create(ProtoType, PredValues.size(), in GetValueInMiddleOfBlock() 212 if (PHINode *UserPN = dyn_cast<PHINode>(User)) in RewriteUse() 233 if (PHINode *UserPN = dyn_cast<PHINode>(User)) in RewriteUseAfterInsertions() 249 typedef PHINode PhiT; [all …]
|
D | Local.cpp | 376 bool llvm::RecursivelyDeleteDeadPHINode(PHINode *PN, in RecursivelyDeleteDeadPHINode() 451 if (!isa<PHINode>(BB->begin())) in RemovePredecessorAndSimplify() 460 while (PHINode *PN = dyn_cast<PHINode>(PhiIt)) { in RemovePredecessorAndSimplify() 482 while (PHINode *PN = dyn_cast<PHINode>(DestBB->begin())) { in MergeBasicBlockIntoOnlyPred() 547 for (BasicBlock::iterator I = Succ->begin(); isa<PHINode>(I); ++I) { in CanPropagatePredecessorsForPHIs() 548 PHINode *PN = cast<PHINode>(I); in CanPropagatePredecessorsForPHIs() 553 PHINode *BBPN = dyn_cast<PHINode>(PN->getIncomingValueForBlock(BB)); in CanPropagatePredecessorsForPHIs() 617 while (isa<PHINode>(*BBI)) { in TryToSimplifyUncondBranchFromEmptyBlock() 620 if (PHINode* PN = dyn_cast<PHINode>(*UI)) { in TryToSimplifyUncondBranchFromEmptyBlock() 633 if (isa<PHINode>(Succ->begin())) { in TryToSimplifyUncondBranchFromEmptyBlock() [all …]
|
D | BasicBlockUtils.cpp | 68 if (!isa<PHINode>(BB->begin())) return; in FoldSingleEntryPHINodes() 77 while (PHINode *PN = dyn_cast<PHINode>(BB->begin())) { in FoldSingleEntryPHINodes() 102 PHINode *PN = dyn_cast<PHINode>(I); ++I) in DeleteDeadPHIs() 107 if (PHINode *PN = dyn_cast_or_null<PHINode>(PHIs[i].operator Value*())) in DeleteDeadPHIs() 141 if (PHINode *PN = dyn_cast<PHINode>(BI)) { in MergeBlockIntoPredecessor() 150 if (isa<PHINode>(BB->front())) in MergeBlockIntoPredecessor() 289 while (isa<PHINode>(SplitIt) || isa<LandingPadInst>(SplitIt)) in SplitBlock() 400 for (BasicBlock::iterator I = OrigBB->begin(); isa<PHINode>(I); ) { in UpdatePHINodes() 401 PHINode *PN = cast<PHINode>(I++); in UpdatePHINodes() 424 PHINode *NewPHI = in UpdatePHINodes() [all …]
|
D | BreakCriticalEdges.cpp | 134 PHINode *PN = dyn_cast<PHINode>(I); ++I) { in createPHIsForSplitLoopExit() 140 if (const PHINode *VP = dyn_cast<PHINode>(V)) in createPHIsForSplitLoopExit() 145 PHINode *NewPN = in createPHIsForSplitLoopExit() 146 PHINode::Create(PN->getType(), Preds.size(), "split", in createPHIsForSplitLoopExit() 209 for (BasicBlock::iterator I = DestBB->begin(); isa<PHINode>(I); ++I) { in SplitCriticalEdge() 213 PHINode *PN = cast<PHINode>(I); in SplitCriticalEdge() 263 if (PHINode *PN = dyn_cast<PHINode>(DestBB->begin())) { in SplitCriticalEdge()
|
D | LCSSA.cpp | 157 !isa<PHINode>(I->use_back()))) in runOnLoop() 198 if (PHINode *PN = dyn_cast<PHINode>(U)) in ProcessInstruction() 220 SmallVector<PHINode*, 16> AddedPHIs; in ProcessInstruction() 235 PHINode *PN = PHINode::Create(Inst->getType(), in ProcessInstruction() 268 if (PHINode *PN = dyn_cast<PHINode>(User)) in ProcessInstruction() 271 if (isa<PHINode>(UserBB->begin()) && in ProcessInstruction()
|
D | LoopUnroll.cpp | 50 if (PHINode *PN = dyn_cast<PHINode>(I)) { in RemapInstruction() 250 std::vector<PHINode*> OrigPHINode; in UnrollLoop() 251 for (BasicBlock::iterator I = Header->begin(); isa<PHINode>(I); ++I) { in UnrollLoop() 252 OrigPHINode.push_back(cast<PHINode>(I)); in UnrollLoop() 282 PHINode *NewPHI = cast<PHINode>(VMap[OrigPHINode[i]]); in UnrollLoop() 305 PHINode *phi = dyn_cast<PHINode>(BBI); ++BBI) { in UnrollLoop() 332 PHINode *PN = OrigPHINode[i]; in UnrollLoop() 391 PHINode *Phi = dyn_cast<PHINode>(BBI); ++BBI) { in UnrollLoop()
|
D | CloneFunction.cpp | 267 if (!isa<PHINode>(NewInst)) { in CloneBlock() 397 SmallVector<const PHINode*, 16> PHIToResolve; in CloneAndPruneFunctionInto() 410 if (const PHINode *PN = dyn_cast<PHINode>(I)) in CloneAndPruneFunctionInto() 424 const PHINode *OPN = PHIToResolve[phino]; in CloneAndPruneFunctionInto() 434 PHINode *PN = cast<PHINode>(VMap[OPN]); in CloneAndPruneFunctionInto() 456 PHINode *PN = cast<PHINode>(NewBB->begin()); in CloneAndPruneFunctionInto() 474 for (; (PN = dyn_cast<PHINode>(I)); ++I) { in CloneAndPruneFunctionInto() 487 PN = cast<PHINode>(NewBB->begin()); in CloneAndPruneFunctionInto() 491 while ((PN = dyn_cast<PHINode>(I++))) { in CloneAndPruneFunctionInto() 510 if (PHINode *PN = dyn_cast<PHINode>(VMap[PHIToResolve[Idx]])) in CloneAndPruneFunctionInto() [all …]
|
D | SimplifyCFG.cpp | 128 isa<PHINode>(BBI); ++BBI) { in SafeToMergeTerminators() 129 PHINode *PN = cast<PHINode>(BBI); in SafeToMergeTerminators() 146 SmallVectorImpl<PHINode*> &PhiNodes) { in isProfitableToFoldUnconditional() 169 isa<PHINode>(BBI); ++BBI) { in isProfitableToFoldUnconditional() 170 PHINode *PN = cast<PHINode>(BBI); in isProfitableToFoldUnconditional() 185 if (!isa<PHINode>(Succ->begin())) return; // Quick exit if nothing to do in AddPredecessorToBlock() 187 PHINode *PN; in AddPredecessorToBlock() 189 (PN = dyn_cast<PHINode>(I)); ++I) in AddPredecessorToBlock() 205 PHINode *SomePHI = cast<PHINode>(BB->begin()); in GetIfCondition() 1040 PHINode *PN; in isSafeToHoistInvoke() [all …]
|
D | DemoteRegToStack.cpp | 44 if (PHINode *PN = dyn_cast<PHINode>(U)) { in DemoteRegToStack() 99 for (; isa<PHINode>(InsertPt) || isa<LandingPadInst>(InsertPt); ++InsertPt) in DemoteRegToStack() 109 AllocaInst *llvm::DemotePHIToStack(PHINode *P, Instruction *AllocaPoint) { in DemotePHIToStack() 139 for (; isa<PHINode>(InsertPt) || isa<LandingPadInst>(InsertPt); ++InsertPt) in DemotePHIToStack()
|
D | CodeExtractor.cpp | 192 PHINode *PN = dyn_cast<PHINode>(Header->begin()); in severSplitPHINodes() 232 PHINode *PN = cast<PHINode>(OldPred->begin()); in severSplitPHINodes() 243 for (AfterPHIs = OldPred->begin(); isa<PHINode>(AfterPHIs); ++AfterPHIs) { in severSplitPHINodes() 244 PHINode *PN = cast<PHINode>(AfterPHIs); in severSplitPHINodes() 247 PHINode *NewPN = PHINode::Create(PN->getType(), 1 + NumPredsFromRegion, in severSplitPHINodes() 410 PHINode *P = dyn_cast<PHINode>(*UI); in FindPhiPredForUseInBlock() 742 for (BasicBlock::iterator I = header->begin(); isa<PHINode>(I); ++I) { in extractCodeRegion() 743 PHINode *PN = cast<PHINode>(I); in extractCodeRegion() 755 for (BasicBlock::iterator I = Succs[i]->begin(); isa<PHINode>(I); ++I) { in extractCodeRegion() 756 PHINode *PN = cast<PHINode>(I); in extractCodeRegion()
|
D | LoopUnrollRuntime.cpp | 71 PHINode *PN = dyn_cast<PHINode>(BBI); ++BBI) { in ConnectProlog() 75 PHINode *NewPN = PHINode::Create(PN->getType(), 2, PN->getName()+".unr", in ConnectProlog() 169 for (BasicBlock::iterator I = Header->begin(); isa<PHINode>(I); ++I) { in CloneLoopBlocks() 170 PHINode *NewPHI = cast<PHINode>(VMap[I]); in CloneLoopBlocks()
|
D | BypassSlowDivision.cpp | 38 PHINode *Quotient; 39 PHINode *Remainder; 41 DivPhiNodes(PHINode *InQuotient, PHINode *InRemainder) in DivPhiNodes() 141 PHINode *QuoPhi = SuccessorBuilder.CreatePHI(Instr->getType(), 2); in insertFastDiv() 144 PHINode *RemPhi = SuccessorBuilder.CreatePHI(Instr->getType(), 2); in insertFastDiv()
|
D | LoopSimplify.cpp | 273 PHINode *PN; in ProcessLoop() 275 (PN = dyn_cast<PHINode>(I++)); ) in ProcessLoop() 468 static PHINode *FindPHIToPartitionLoops(Loop *L, DominatorTree *DT, in FindPHIToPartitionLoops() 470 for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ) { in FindPHIToPartitionLoops() 471 PHINode *PN = cast<PHINode>(I); in FindPHIToPartitionLoops() 556 PHINode *PN = FindPHIToPartitionLoops(L, DT, AA, LI); in SeparateNestedLoop() 693 for (BasicBlock::iterator I = Header->begin(); isa<PHINode>(I); ++I) { in InsertUniqueBackedgeBlock() 694 PHINode *PN = cast<PHINode>(I); in InsertUniqueBackedgeBlock() 695 PHINode *NewPN = PHINode::Create(PN->getType(), BackedgeBlocks.size(), in InsertUniqueBackedgeBlock()
|
/external/llvm/lib/Transforms/InstCombine/ |
D | InstCombinePHI.cpp | 24 Instruction *InstCombiner::FoldPHIArgBinOpIntoPHI(PHINode &PN) { in FoldPHIArgBinOpIntoPHI() 81 PHINode *NewLHS = 0, *NewRHS = 0; in FoldPHIArgBinOpIntoPHI() 83 NewLHS = PHINode::Create(LHSType, PN.getNumIncomingValues(), in FoldPHIArgBinOpIntoPHI() 91 NewRHS = PHINode::Create(RHSType, PN.getNumIncomingValues(), in FoldPHIArgBinOpIntoPHI() 130 Instruction *InstCombiner::FoldPHIArgGEPIntoPHI(PHINode &PN) { in FoldPHIArgGEPIntoPHI() 201 SmallVector<PHINode*, 16> OperandPhis(FixedOperands.size()); in FoldPHIArgGEPIntoPHI() 207 PHINode *NewPN = PHINode::Create(FirstOp->getType(), e, in FoldPHIArgGEPIntoPHI() 225 if (PHINode *OpPhi = OperandPhis[op]) in FoldPHIArgGEPIntoPHI() 287 Instruction *InstCombiner::FoldPHIArgLoadIntoPHI(PHINode &PN) { in FoldPHIArgLoadIntoPHI() 348 PHINode *NewPN = PHINode::Create(FirstLI->getOperand(0)->getType(), in FoldPHIArgLoadIntoPHI() [all …]
|
/external/llvm/lib/IR/ |
D | BasicBlock.cpp | 136 while (isa<PHINode>(i)) ++i; in getFirstNonPHI() 146 while (isa<PHINode>(i) || isa<DbgInfoIntrinsic>(i)) ++i; in getFirstNonPHIOrDbg() 157 if (isa<PHINode>(i) || isa<DbgInfoIntrinsic>(i)) in getFirstNonPHIOrDbgOrLifetime() 223 PHINode *APN = dyn_cast<PHINode>(&front()); in removePredecessor() 250 while (PHINode *PN = dyn_cast<PHINode>(&front())) { in removePredecessor() 270 PHINode *PN; in removePredecessor() 271 for (iterator II = begin(); (PN = dyn_cast<PHINode>(II)); ) { in removePredecessor() 324 PHINode *PN; in splitBasicBlock() 326 (PN = dyn_cast<PHINode>(II)); ++II) { in splitBasicBlock() 348 PHINode *PN = dyn_cast<PHINode>(II); in replaceSuccessorsPhiUsesWith()
|
D | Dominators.cpp | 120 if (isa<InvokeInst>(Def) || isa<PHINode>(User)) in dominates() 222 PHINode *PN = dyn_cast<PHINode>(UserInst); in dominates() 246 if (PHINode *PN = dyn_cast<PHINode>(UserInst)) in dominates() 278 if (isa<PHINode>(UserInst)) in dominates() 297 if (PHINode *PN = dyn_cast<PHINode>(I)) in isReachableFromEntry()
|
/external/llvm/lib/Transforms/Scalar/ |
D | IndVarSimplify.cpp | 105 void HandleFloatingPointIV(Loop *L, PHINode *PH); 113 PHINode *IndVar, SCEVExpander &Rewriter); 192 PHINode *PHI = dyn_cast<PHINode>(User); in getInsertPointForUses() 241 void IndVarSimplify::HandleFloatingPointIV(Loop *L, PHINode *PN) { in HandleFloatingPointIV() 396 PHINode *NewPHI = PHINode::Create(Int32Ty, 2, PN->getName()+".int", PN); in HandleFloatingPointIV() 448 PHINode *PN = dyn_cast<PHINode>(I); ++I) in RewriteNonIntegerIVs() 452 if (PHINode *PN = dyn_cast_or_null<PHINode>(&*PHIs[i])) in RewriteNonIntegerIVs() 492 PHINode *PN = dyn_cast<PHINode>(ExitBB->begin()); in RewriteLoopExitValues() 499 while ((PN = dyn_cast<PHINode>(BBI++))) { in RewriteLoopExitValues() 568 PHINode *NewPN = cast<PHINode>(PN->clone()); in RewriteLoopExitValues() [all …]
|
D | TailRecursionElimination.cpp | 100 SmallVector<PHINode*, 8> &ArgumentPHIs, 105 SmallVector<PHINode*, 8> &ArgumentPHIs, 109 SmallVector<PHINode*, 8> &ArgumentPHIs, 169 SmallVector<PHINode*, 8> ArgumentPHIs; in runOnFunction() 216 PHINode *PN = ArgumentPHIs[i]; in runOnFunction() 427 SmallVector<PHINode*, 8> &ArgumentPHIs, in EliminateRecursiveTailCall() argument 514 PHINode *PN = PHINode::Create(I->getType(), 2, in EliminateRecursiveTailCall() 546 PHINode *AccPN = in EliminateRecursiveTailCall() 547 PHINode::Create(AccumulatorRecursionEliminationInitVal->getType(), in EliminateRecursiveTailCall() 603 SmallVector<PHINode*, 8> &ArgumentPHIs, in FoldReturnAndProcessPred() argument [all …]
|
D | CodeGenPrepare.cpp | 290 if (!isa<DbgInfoIntrinsic>(BBI) && !isa<PHINode>(BBI)) in EliminateMostlyEmptyBlocks() 317 while (const PHINode *PN = dyn_cast<PHINode>(BBI++)) { in CanMergeBlocks() 321 if (User->getParent() != DestBB || !isa<PHINode>(User)) in CanMergeBlocks() 327 if (const PHINode *UPN = dyn_cast<PHINode>(User)) in CanMergeBlocks() 341 const PHINode *DestBBPN = dyn_cast<PHINode>(DestBB->begin()); in CanMergeBlocks() 346 if (const PHINode *BBPN = dyn_cast<PHINode>(BB->begin())) { in CanMergeBlocks() 359 while (const PHINode *PN = dyn_cast<PHINode>(BBI++)) { in CanMergeBlocks() 364 if (const PHINode *V2PN = dyn_cast<PHINode>(V2)) in CanMergeBlocks() 405 PHINode *PN; in EliminateMostlyEmptyBlock() 407 (PN = dyn_cast<PHINode>(BBI)); ++BBI) { in EliminateMostlyEmptyBlock() [all …]
|
/external/llvm/lib/Transforms/ObjCARC/ |
D | ProvenanceAnalysis.cpp | 47 bool ProvenanceAnalysis::relatedPHI(const PHINode *A, in relatedPHI() 52 if (const PHINode *PNB = dyn_cast<PHINode>(B)) in relatedPHI() 150 if (const PHINode *PN = dyn_cast<PHINode>(A)) in relatedCheck() 152 if (const PHINode *PN = dyn_cast<PHINode>(B)) in relatedCheck()
|
/external/llvm/include/llvm/Analysis/ |
D | ScalarEvolutionExpander.h | 70 std::set<AssertingVH<PHINode> > ChainedPhis; 121 PHINode *getOrInsertCanonicalInductionVariable(const Loop *L, Type *Ty); 188 void setChainedPhi(PHINode *PN) { ChainedPhis.insert(PN); } 257 bool isNormalAddRecExprPHI(PHINode *PN, Instruction *IncV, const Loop *L); 259 bool isExpandedAddRecExprPHI(PHINode *PN, Instruction *IncV, const Loop *L); 262 PHINode *getAddRecExprPHILiterally(const SCEVAddRecExpr *Normalized, 266 Value *expandIVInc(PHINode *PN, Value *StepV, const Loop *L,
|
/external/llvm/lib/Target/R600/ |
D | SIAnnotateControlFlow.cpp | 72 bool isElse(PHINode *Phi); 74 void eraseIfUnused(PHINode *Phi); 165 bool SIAnnotateControlFlow::isElse(PHINode *Phi) { in isElse() 183 void SIAnnotateControlFlow::eraseIfUnused(PHINode *Phi) { in eraseIfUnused() 204 if (PHINode *Phi = dyn_cast<PHINode>(Cond)) { in handleLoopCondition() 261 PHINode *Broken = PHINode::Create(Int64, 0, "", &Target->front()); in handleLoop() 311 PHINode *Phi = dyn_cast<PHINode>(Term->getCondition()); in runOnFunction()
|
/external/llvm/lib/Analysis/ |
D | IVUsers.cpp | 127 if (!isa<PHINode>(I) && !isSafeToSpeculativelyExecute(I, TD)) in AddUsersImpl() 153 if (isa<PHINode>(User) && Processed.count(User)) in AddUsersImpl() 160 if (PHINode *PHI = dyn_cast<PHINode>(User)) { in AddUsersImpl() 162 unsigned ValNo = PHINode::getIncomingValueNumForOperand(OperandNo); in AddUsersImpl() 176 if (isa<PHINode>(User) || Processed.count(User) || in AddUsersImpl() 243 for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ++I) in runOnLoop()
|
/external/llvm/include/llvm/Transforms/Utils/ |
D | SSAUpdater.h | 26 class PHINode; variable 52 SmallVectorImpl<PHINode*> *InsertedPHIs; 57 explicit SSAUpdater(SmallVectorImpl<PHINode*> *InsertedPHIs = 0);
|
/external/llvm/lib/Transforms/Vectorize/ |
D | LoopVectorize.cpp | 168 typedef SmallVector<PHINode*, 4> PhiVector; 310 PHINode *Induction; 312 PHINode *OldInduction; 414 typedef DenseMap<PHINode*, ReductionDescriptor> ReductionList; 418 typedef MapVector<PHINode*, InductionInfo> InductionList; 431 PHINode *getInduction() { return Induction; } in getInduction() 489 bool AddReductionVar(PHINode *Phi, ReductionKind Kind); 495 InductionKind isInductionVariable(PHINode *Phi); 526 PHINode *Induction; 804 PHINode *Phi = dyn_cast_or_null<PHINode>(Ptr); in isConsecutivePtr() [all …]
|