/external/llvm/lib/Transforms/Utils/ |
H A D | UnifyFunctionExitNodes.cpp | 94 PHINode *PN = nullptr; local 99 PN = PHINode::Create(F.getReturnType(), ReturningBlocks.size(), 101 NewRetBlock->getInstList().push_back(PN); 102 ReturnInst::Create(F.getContext(), PN, NewRetBlock); 114 if (PN) 115 PN->addIncoming(BB->getTerminator()->getOperand(0), BB);
|
H A D | BreakCriticalEdges.cpp | 101 PHINode *PN = dyn_cast<PHINode>(I); ++I) { 102 unsigned Idx = PN->getBasicBlockIndex(SplitBB); 103 Value *V = PN->getIncomingValue(Idx); 113 PHINode::Create(PN->getType(), Preds.size(), "split", 120 PN->setIncomingValue(Idx, NewPN); 180 PHINode *PN = cast<PHINode>(I); local 187 if (PN->getIncomingBlock(BBIdx) != TIBB) 188 BBIdx = PN->getBasicBlockIndex(TIBB); 189 PN->setIncomingBlock(BBIdx, NewBB); 231 if (PHINode *PN [all...] |
H A D | LCSSA.cpp | 72 if (PHINode *PN = dyn_cast<PHINode>(User)) 73 UserBB = PN->getIncomingBlock(U); 114 PHINode *PN = PHINode::Create(Inst.getType(), PredCache.GetNumPreds(ExitBB), local 119 PN->addIncoming(&Inst, *PI); 126 &PN->getOperandUse(PN->getOperandNumForIncomingValue( 127 PN->getNumIncomingValues() - 1))); 130 AddedPHIs.push_back(PN); 133 SSAUpdate.AddAvailableValue(ExitBB, PN); 145 if (PHINode *PN [all...] |
H A D | LoopUnroll.cpp | 56 if (PHINode *PN = dyn_cast<PHINode>(I)) { 57 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) { 58 ValueToValueMapTy::iterator It = VMap.find(PN->getIncomingBlock(i)); 60 PN->setIncomingBlock(i, cast<BasicBlock>(It->second)); 355 PHINode *PN = OrigPHINode[i]; local 357 PN->replaceAllUsesWith(PN->getIncomingValueForBlock(Preheader)); 358 Header->getInstList().erase(PN); 361 Value *InVal = PN->removeIncomingValue(LatchBlock, false); 369 PN [all...] |
H A D | CloneFunction.cpp | 465 if (const PHINode *PN = dyn_cast<PHINode>(I)) 466 PHIToResolve.push_back(PN); 489 PHINode *PN = cast<PHINode>(VMap[OPN]); local 491 Value *V = VMap[PN->getIncomingBlock(pred)]; 493 Value *InVal = MapValue(PN->getIncomingValue(pred), 497 PN->setIncomingValue(pred, InVal); 498 PN->setIncomingBlock(pred, MappedBlock); 500 PN->removeIncomingValue(pred, false); 511 PHINode *PN = cast<PHINode>(NewBB->begin()); local 513 if (NumPreds != PN [all...] |
H A D | LoopSimplify.cpp | 214 PHINode *PN = cast<PHINode>(I); local 216 if (Value *V = SimplifyInstruction(PN, nullptr, nullptr, DT)) { 218 PN->replaceAllUsesWith(V); 219 if (AA) AA->deleteValue(PN); 220 PN->eraseFromParent(); 225 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) 226 if (PN->getIncomingValue(i) == PN && 227 L->contains(PN->getIncomingBlock(i))) 229 return PN; 264 PHINode *PN = findPHIToPartitionLoops(L, AA, DT); local 399 PHINode *PN = cast<PHINode>(I); local 612 PHINode *PN; local [all...] |
H A D | LowerSwitch.cpp | 272 PHINode* PN = cast<PHINode>(I); local 277 PN->removeIncomingValue(OrigBlock); 280 int BlockIdx = PN->getBasicBlockIndex(OrigBlock); 282 PN->setIncomingBlock((unsigned)BlockIdx, NewLeaf); 360 PHINode *PN = cast<PHINode>(I); local 361 int BlockIdx = PN->getBasicBlockIndex(OrigBlock); 363 PN->setIncomingBlock((unsigned)BlockIdx, NewDefault);
|
/external/llvm/lib/IR/ |
H A D | Dominators.cpp | 202 PHINode *PN = dyn_cast<PHINode>(UserInst); local 203 if (PN && PN->getParent() == BBE.getEnd() && 204 PN->getIncomingBlock(U) == BBE.getStart()) 210 if (PN) 211 UseBB = PN->getIncomingBlock(U); 225 if (PHINode *PN = dyn_cast<PHINode>(UserInst)) 226 UseBB = PN->getIncomingBlock(U); 276 if (PHINode *PN = dyn_cast<PHINode>(I)) 277 return isReachableFromEntry(PN [all...] |
H A D | BasicBlock.cpp | 254 while (PHINode *PN = dyn_cast<PHINode>(&front())) { 256 PN->removeIncomingValue(Pred, !DontDeleteUselessPHIs); 260 if (PN->getIncomingValue(0) != PN) 261 PN->replaceAllUsesWith(PN->getIncomingValue(0)); 264 PN->replaceAllUsesWith(UndefValue::get(PN->getType())); 274 PHINode *PN; local 275 for (iterator II = begin(); (PN 328 PHINode *PN; local 352 PHINode *PN = dyn_cast<PHINode>(II); local [all...] |
H A D | Instruction.cpp | 388 const PHINode *PN = dyn_cast<PHINode>(I); local 389 if (!PN) { 395 if (PN->getIncomingBlock(U) != BB)
|
H A D | Value.cpp | 563 PHINode *PN = dyn_cast<PHINode>(this); local 564 if (PN && PN->getParent() == CurBB) 565 return PN->getIncomingValueForBlock(PredBB);
|
/external/llvm/include/llvm/Analysis/ |
H A D | ScalarEvolutionExpander.h | 188 void setChainedPhi(PHINode *PN) { ChainedPhis.insert(PN); } argument 255 bool isNormalAddRecExprPHI(PHINode *PN, Instruction *IncV, const Loop *L); 257 bool isExpandedAddRecExprPHI(PHINode *PN, Instruction *IncV, const Loop *L); 266 Value *expandIVInc(PHINode *PN, Value *StepV, const Loop *L,
|
H A D | SparsePropagation.h | 77 virtual bool IsSpecialCasedPHI(PHINode *PN) { argument
|
/external/llvm/lib/Analysis/ |
H A D | DominanceFrontier.cpp | 28 const DomTreeNode *PN) 29 : currentBB(B), parentBB(P), Node(N), parentNode(PN) {} 26 DFCalculateWorkObject(BasicBlock *B, BasicBlock *P, const DomTreeNode *N, const DomTreeNode *PN) argument
|
H A D | SparsePropagation.cpp | 230 void SparseSolver::visitPHINode(PHINode &PN) { argument 234 if (LatticeFunc->IsSpecialCasedPHI(&PN)) { 235 LatticeVal IV = LatticeFunc->ComputeInstructionState(PN, *this); 237 UpdateState(PN, IV); 241 LatticeVal PNIV = getOrInitValueState(&PN); 250 if (PN.getNumIncomingValues() > 64) { 251 UpdateState(PN, Overdefined); 258 for (unsigned i = 0, e = PN.getNumIncomingValues(); i != e; ++i) { 260 if (!isEdgeFeasible(PN.getIncomingBlock(i), PN [all...] |
H A D | LoopInfo.cpp | 162 PHINode *PN = cast<PHINode>(I); local 164 dyn_cast<ConstantInt>(PN->getIncomingValueForBlock(Incoming))) 167 dyn_cast<Instruction>(PN->getIncomingValueForBlock(Backedge))) 169 Inc->getOperand(0) == PN) 172 return PN;
|
/external/llvm/lib/CodeGen/ |
H A D | DwarfEHPrepare.cpp | 151 PHINode *PN = PHINode::Create(Type::getInt8PtrTy(Ctx), ResumesSize, local 163 PN->addIncoming(ExnObj, Parent); 169 CallInst *CI = CallInst::Create(RewindFunction, PN, "", UnwindBB);
|
H A D | SjLjEHPrepare.cpp | 327 PHINode *PN = cast<PHINode>(U); local 328 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) 329 if (PN->getIncomingValue(i) == Inst) 330 MarkBlocksLiveIn(PN->getIncomingBlock(i), LiveBBs); 365 for (BasicBlock::iterator PN = UnwindBlock->begin(); isa<PHINode>(PN); ++PN) 366 PHIsToDemote.insert(cast<PHINode>(PN));
|
/external/llvm/include/llvm/CodeGen/ |
H A D | FunctionLoweringInfo.h | 192 void InvalidatePHILiveOutRegInfo(const PHINode *PN) { argument 194 DenseMap<const Value*, unsigned>::const_iterator It = ValueMap.find(PN);
|
/external/llvm/lib/ExecutionEngine/Interpreter/ |
H A D | Interpreter.h | 153 void visitPHINode(PHINode &PN) { argument
|
/external/llvm/lib/CodeGen/SelectionDAG/ |
H A D | FunctionLoweringInfo.cpp | 195 const PHINode *PN = dyn_cast<PHINode>(I); ++I) { 196 if (PN->use_empty()) continue; 199 if (PN->getType()->isEmptyTy()) 202 DebugLoc DL = PN->getDebugLoc(); 203 unsigned PHIReg = ValueMap[PN]; 207 ComputeValueVTs(*TLI, PN->getType(), ValueVTs); 304 void FunctionLoweringInfo::ComputePHILiveOutRegInfo(const PHINode *PN) { argument 305 Type *Ty = PN->getType(); 317 if (TLI->getNumRegisters(PN->getContext(), IntVT) != 1) 319 IntVT = TLI->getTypeToTransformTo(PN [all...] |
/external/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineLoadStoreAlloca.cpp | 823 PHINode *PN = PHINode::Create(MergedVal->getType(), 2, "storemerge"); local 824 PN->addIncoming(SI.getOperand(0), SI.getParent()); 825 PN->addIncoming(OtherStore->getOperand(0), OtherBB); 826 MergedVal = InsertNewInstBefore(PN, DestBB->front());
|
H A D | InstCombineShifts.cpp | 174 PHINode *PN = cast<PHINode>(I); local 175 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) 176 if (!CanEvaluateShifted(PN->getIncomingValue(i), NumBits, isLeftShift,IC)) 303 PHINode *PN = cast<PHINode>(I); local 304 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) 305 PN->setIncomingValue(i, GetShiftedValue(PN->getIncomingValue(i), 307 return PN;
|
H A D | InstCombinePHI.cpp | 26 Instruction *InstCombiner::FoldPHIArgBinOpIntoPHI(PHINode &PN) { argument 27 Instruction *FirstInst = cast<Instruction>(PN.getIncomingValue(0)); 46 for (unsigned i = 1; i != PN.getNumIncomingValues(); ++i) { 47 Instruction *I = dyn_cast<Instruction>(PN.getIncomingValue(i)); 85 NewLHS = PHINode::Create(LHSType, PN.getNumIncomingValues(), 87 NewLHS->addIncoming(InLHS, PN.getIncomingBlock(0)); 88 InsertNewInstBefore(NewLHS, PN); 93 NewRHS = PHINode::Create(RHSType, PN.getNumIncomingValues(), 95 NewRHS->addIncoming(InRHS, PN.getIncomingBlock(0)); 96 InsertNewInstBefore(NewRHS, PN); 132 FoldPHIArgGEPIntoPHI(PHINode &PN) argument 287 FoldPHIArgLoadIntoPHI(PHINode &PN) argument 391 FoldPHIArgOpIntoPHI(PHINode &PN) argument 508 DeadPHICycle(PHINode *PN, SmallPtrSet<PHINode*, 16> &PotentiallyDeadPHIs) argument 530 PHIsEqualValue(PHINode *PN, Value *NonPhiInVal, SmallPtrSet<PHINode*, 16> &ValueEqualPHIs) argument 575 PHINode *PN; // The PHI that was lowered. member in struct:__anon25409::LoweredPHIRecord 634 PHINode *PN = PHIsToSlice[PHIId]; local 702 PHINode *PN = PHIsToSlice[PHIId]; local 790 visitPHINode(PHINode &PN) argument [all...] |
/external/llvm/lib/Transforms/IPO/ |
H A D | FunctionAttrs.cpp | 752 PHINode *PN = cast<PHINode>(RVI); local 753 for (int i = 0, e = PN->getNumIncomingValues(); i != e; ++i) 754 FlowsToReturn.insert(PN->getIncomingValue(i));
|