Home
last modified time | relevance | path

Searched refs:Phi (Results 1 – 25 of 138) sorted by relevance

123456

/external/llvm/lib/Transforms/Utils/
DLoopUtils.cpp77 RecurrenceDescriptor::lookThroughAnd(PHINode *Phi, Type *&RT, in lookThroughAnd() argument
80 if (!Phi->hasOneUse()) in lookThroughAnd()
81 return Phi; in lookThroughAnd()
84 Instruction *I, *J = cast<Instruction>(Phi->use_begin()->getUser()); in lookThroughAnd()
92 RT = IntegerType::get(Phi->getContext(), Bits); in lookThroughAnd()
93 Visited.insert(Phi); in lookThroughAnd()
98 return Phi; in lookThroughAnd()
162 bool RecurrenceDescriptor::AddReductionVar(PHINode *Phi, RecurrenceKind Kind, in AddReductionVar() argument
165 if (Phi->getNumIncomingValues() != 2) in AddReductionVar()
169 if (Phi->getParent() != TheLoop->getHeader()) in AddReductionVar()
[all …]
DMemorySSA.cpp213 auto *Phi = cast<MemoryPhi>(&Accesses->front()); in renameBlock() local
214 Phi->addIncoming(IncomingVal, BB); in renameBlock()
275 auto *Phi = cast<MemoryPhi>(&Accesses->front()); in markUnreachableAsLiveOnEntry() local
276 Phi->addIncoming(LiveOnEntryDef.get(), BB); in markUnreachableAsLiveOnEntry()
409 MemoryPhi *Phi = new MemoryPhi(BB->getContext(), BB, NextID++); in buildMemorySSA() local
410 ValueToMemoryAccess.insert(std::make_pair(BB, Phi)); in buildMemorySSA()
412 Accesses->push_front(Phi); in buildMemorySSA()
458 MemoryPhi *Phi = new MemoryPhi(BB->getContext(), BB, NextID++); in createMemoryPhi() local
459 ValueToMemoryAccess.insert(std::make_pair(BB, Phi)); in createMemoryPhi()
461 Accesses->push_front(Phi); in createMemoryPhi()
[all …]
/external/swiftshader/third_party/subzero/src/
DIcePhiLoweringImpl.h35 auto *Phi = llvm::dyn_cast<InstPhi>(&I); in prelowerPhis32Bit() local
36 if (Phi->isDeleted()) in prelowerPhis32Bit()
38 Variable *Dest = Phi->getDest(); in prelowerPhis32Bit()
43 auto *PhiLo = InstPhi::create(Func, Phi->getSrcSize(), DestLo); in prelowerPhis32Bit()
44 auto *PhiHi = InstPhi::create(Func, Phi->getSrcSize(), DestHi); in prelowerPhis32Bit()
45 for (SizeT I = 0; I < Phi->getSrcSize(); ++I) { in prelowerPhis32Bit()
46 Operand *Src = Phi->getSrc(I); in prelowerPhis32Bit()
47 CfgNode *Label = Phi->getLabel(I); in prelowerPhis32Bit()
54 Phi->setDeleted(); in prelowerPhis32Bit()
60 auto *PhiElem = InstPhi::create(Func, Phi->getSrcSize(), DestElem); in prelowerPhis32Bit()
[all …]
DIceCfgNode.cpp43 if (auto *Phi = llvm::dyn_cast<InstPhi>(Instr)) { in appendInst() local
48 Phis.push_back(Phi); in appendInst()
61 auto &Phi = llvm::cast<InstPhi>(Inst); in replaceInEdge() local
62 for (SizeT i = 0; i < Phi.getSrcSize(); ++i) { in replaceInEdge()
63 if (Phi.getLabel(i) == Old) { in replaceInEdge()
64 Phi.setLabel(i, New); in replaceInEdge()
117 auto *Phi = llvm::cast<InstPhi>(&Instr); in enforcePhiConsistency() local
124 for (SizeT i = 0; i < Phi->getSrcSize(); ++i) { in enforcePhiConsistency()
125 CfgNode *Label = Phi->getLabel(i); in enforcePhiConsistency()
136 Phi->clearOperandForTarget(Label); in enforcePhiConsistency()
[all …]
DWasmTranslator.cpp327 Node Phi(wasm::LocalType, uint32_t Count, Node *Vals, Node Control) { in Phi() function in IceBuilder
345 auto *Phi = InstPhi::create(Func, Count * 200, Dest); in Phi() local
349 Phi->addArgument(Op, InEdges[i]); in Phi()
351 setDefiningInst(Dest, Phi); in Phi()
352 Control.toCfgNode()->appendInst(Phi); in Phi()
934 bool IsPhiWithMerge(Node Phi, Node Merge) const { in IsPhiWithMerge() argument
935 LOG(out << "IsPhiWithMerge(" << Phi << ", " << Merge << ")" in IsPhiWithMerge()
937 if (Phi && Phi.isOperand()) { in IsPhiWithMerge()
940 if (getDefiningInst(Phi)) { in IsPhiWithMerge()
943 LOG(out << getDefNode(Phi) << "\n"); in IsPhiWithMerge()
[all …]
/external/llvm/lib/Target/AMDGPU/
DSIAnnotateControlFlow.cpp80 bool isElse(PHINode *Phi);
82 void eraseIfUnused(PHINode *Phi);
191 bool SIAnnotateControlFlow::isElse(PHINode *Phi) { in isElse() argument
192 BasicBlock *IDom = DT->getNode(Phi->getParent())->getIDom()->getBlock(); in isElse()
193 for (unsigned i = 0, e = Phi->getNumIncomingValues(); i != e; ++i) { in isElse()
194 if (Phi->getIncomingBlock(i) == IDom) { in isElse()
196 if (Phi->getIncomingValue(i) != BoolTrue) in isElse()
200 if (Phi->getIncomingValue(i) != BoolFalse) in isElse()
209 void SIAnnotateControlFlow::eraseIfUnused(PHINode *Phi) { in eraseIfUnused() argument
210 if (!Phi->hasNUsesOrMore(1)) in eraseIfUnused()
[all …]
/external/clang/lib/Analysis/
DThreadSafetyTIL.cpp61 if (Phi* Ph = dyn_cast<Phi>(E)) { in addPredecessor()
73 if (Phi* Ph = dyn_cast<Phi>(E)) { in reservePredecessors()
90 if (const Phi *Ph = dyn_cast<Phi>(E)) { in getCanonicalVal()
91 if (Ph->status() == Phi::PH_SingleVal) { in getCanonicalVal()
118 if (auto *Ph = dyn_cast<Phi>(E)) { in simplifyToCanonicalVal()
119 if (Ph->status() == Phi::PH_Incomplete) in simplifyToCanonicalVal()
122 if (Ph->status() == Phi::PH_SingleVal) { in simplifyToCanonicalVal()
135 void til::simplifyIncompleteArg(til::Phi *Ph) { in simplifyIncompleteArg()
136 assert(Ph && Ph->status() == Phi::PH_Incomplete); in simplifyIncompleteArg()
139 Ph->setStatus(Phi::PH_MultiVal); in simplifyIncompleteArg()
[all …]
DThreadSafetyCommon.cpp63 if (const auto *Ph = dyn_cast<til::Phi>(E)) in isIncompletePhi()
64 return Ph->status() == til::Phi::PH_Incomplete; in isIncompletePhi()
302 if (auto *Ph = dyn_cast<til::Phi>(E)) in getValueDeclFromSExpr()
677 til::Phi *Ph = dyn_cast<til::Phi>(CurrE); in makePhiNodeVar()
686 til::Phi *Ph = new (Arena) til::Phi(Arena, NPreds); in makePhiNodeVar()
696 Ph->setStatus(til::Phi::PH_Incomplete); in makePhiNodeVar()
701 if (Ph->status() == til::Phi::PH_Incomplete) in makePhiNodeVar()
777 til::Phi *Ph = dyn_cast_or_null<til::Phi>(PE); in mergePhiNodesBackEdge()
921 if (Ph->status() == til::Phi::PH_Incomplete) in exitCFG()
/external/llvm/lib/Transforms/Scalar/
DIndVarSimplify.cpp627 for (const RewritePhi &Phi : RewritePhiSet) { in rewriteLoopExitValues() local
628 PHINode *PN = Phi.PN; in rewriteLoopExitValues()
629 Value *ExitVal = Phi.Val; in rewriteLoopExitValues()
633 if (ReplaceExitValue == OnlyCheapRepl && !LoopCanBeDel && Phi.HighCost) { in rewriteLoopExitValues()
640 Instruction *Inst = cast<Instruction>(PN->getIncomingValue(Phi.Ith)); in rewriteLoopExitValues()
641 PN->setIncomingValue(Phi.Ith, ExitVal); in rewriteLoopExitValues()
766 for (const RewritePhi &Phi : RewritePhiSet) { in canLoopBeDeleted() local
767 unsigned i = Phi.Ith; in canLoopBeDeleted()
768 if (Phi.PN == P && (Phi.PN)->getIncomingValue(i) == Incoming) { in canLoopBeDeleted()
1602 PHINode *Phi = dyn_cast<PHINode>(IncI->getOperand(0)); in getLoopPhiForCounter() local
[all …]
DPartiallyInlineLibCalls.cpp55 PHINode *Phi = Builder.CreatePHI(Call->getType(), 2); in optimizeSQRT() local
56 Call->replaceAllUsesWith(Phi); in optimizeSQRT()
76 Phi->addIncoming(Call, &CurrBB); in optimizeSQRT()
77 Phi->addIncoming(LibCall, LibCallBB); in optimizeSQRT()
DStructurizeCFG.cpp574 PHINode &Phi = cast<PHINode>(*I++); in delPhiValues() local
575 while (Phi.getBasicBlockIndex(From) != -1) { in delPhiValues()
576 Value *Deleted = Phi.removeIncomingValue(From, false); in delPhiValues()
577 Map[&Phi].push_back(std::make_pair(From, Deleted)); in delPhiValues()
587 PHINode &Phi = cast<PHINode>(*I++); in addPhiValues() local
588 Value *Undef = UndefValue::get(Phi.getType()); in addPhiValues()
589 Phi.addIncoming(Undef, From); in addPhiValues()
608 PHINode *Phi = PI.first; in setPhiValues() local
609 Value *Undef = UndefValue::get(Phi->getType()); in setPhiValues()
610 Updater.Initialize(Phi->getType(), ""); in setPhiValues()
[all …]
/external/r8/src/main/java/com/android/tools/r8/ir/optimize/
DDeadCodeRemover.java12 import com.android.tools.r8.ir.code.Phi;
72 List<Phi> toRemove = new ArrayList<>(); in removeDeadPhis()
73 for (Phi phi : block.getPhis()) { in removeDeadPhis()
83 List<Phi> newPhis = new ArrayList<>(block.getPhis().size() - toRemove.size()); in removeDeadPhis()
85 List<Phi> phis = block.getPhis(); in removeDeadPhis()
88 Phi phi = phis.get(i); in removeDeadPhis()
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/
DIndVarSimplify.cpp1350 PHINode *Phi = dyn_cast<PHINode>(IncI->getOperand(0)); in getLoopPhiForCounter() local
1351 if (Phi && Phi->getParent() == L->getHeader()) { in getLoopPhiForCounter()
1353 return Phi; in getLoopPhiForCounter()
1360 Phi = dyn_cast<PHINode>(IncI->getOperand(1)); in getLoopPhiForCounter()
1361 if (Phi && Phi->getParent() == L->getHeader()) { in getLoopPhiForCounter()
1363 return Phi; in getLoopPhiForCounter()
1400 PHINode *Phi = dyn_cast<PHINode>(LHS); in needsLFTR() local
1401 if (!Phi) in needsLFTR()
1402 Phi = getLoopPhiForCounter(LHS, L, DT); in needsLFTR()
1404 if (!Phi) in needsLFTR()
[all …]
/external/r8/src/main/java/com/android/tools/r8/ir/code/
DPhi.java19 public class Phi extends Value { class
38 public Phi(int number, BasicBlock block, MoveType type, DebugLocalInfo local) { in Phi() method in Phi
50 public Phi asPhi() { in asPhi()
201 for (Phi user : uniquePhiUsers()) { in removeTrivialPhi()
223 for (Phi user : uniquePhiUsers()) { in removeTrivialPhi()
269 private MoveType computeOutType(Set<Phi> active) { in computeOutType()
DValue.java64 private LinkedList<Phi> phiUsers = new LinkedList<>();
65 private Set<Phi> uniquePhiUsers = null;
184 public Set<Phi> uniquePhiUsers() { in uniquePhiUsers()
242 public void addPhiUser(Phi user) { in addPhiUser()
247 public void removePhiUser(Phi user) { in removePhiUser()
298 for (Phi user : uniquePhiUsers()) { in replaceUsers()
427 public Phi asPhi() { in asPhi()
530 for (Phi phi : uniquePhiUsers()) { in isDead()
DBasicBlock.java87 private List<Phi> phis = new ArrayList<>();
101 private Map<Integer, Phi> incompletePhis = new HashMap<>();
154 for (Phi phi : getPhis()) { in removePredecessor()
158 List<Phi> trivials = new ArrayList<>(); in removePredecessor()
159 for (Phi phi : getPhis()) { in removePredecessor()
164 for (Phi phi : trivials) { in removePredecessor()
332 for (Phi phi : phis) { in removePhisByIndex()
337 public List<Phi> getPhis() { in getPhis()
341 public void setPhis(List<Phi> phis) { in setPhis()
439 public void addPhi(Phi phi) { in addPhi()
[all …]
/external/llvm/include/llvm/Transforms/Utils/
DLoopUtils.h170 static bool AddReductionVar(PHINode *Phi, RecurrenceKind Kind, Loop *TheLoop,
176 static bool isReductionPHI(PHINode *Phi, Loop *TheLoop,
183 static bool isFirstOrderRecurrence(PHINode *Phi, Loop *TheLoop,
214 static Instruction *lookThroughAnd(PHINode *Phi, Type *&RT,
299 static bool isInductionPHI(PHINode *Phi, ScalarEvolution *SE,
308 static bool isInductionPHI(PHINode *Phi, PredicatedScalarEvolution &PSE,
/external/llvm/lib/Analysis/
DScalarEvolutionExpander.cpp1023 const SCEVAddRecExpr *Phi, in canBeCheaplyTransformed() argument
1026 Type *PhiTy = SE.getEffectiveSCEVType(Phi->getType()); in canBeCheaplyTransformed()
1033 Phi = dyn_cast<SCEVAddRecExpr>(SE.getTruncateOrNoop(Phi, RequestedTy)); in canBeCheaplyTransformed()
1034 if (!Phi) in canBeCheaplyTransformed()
1038 if (Phi == Requested) { in canBeCheaplyTransformed()
1045 SE.getNegativeSCEV(Requested)) == Phi) { in canBeCheaplyTransformed()
1777 for (PHINode *Phi : Phis) { in replaceCongruentIVs()
1791 if (Value *V = SimplifyPHINode(Phi)) { in replaceCongruentIVs()
1792 if (V->getType() != Phi->getType()) in replaceCongruentIVs()
1794 Phi->replaceAllUsesWith(V); in replaceCongruentIVs()
[all …]
/external/icu/icu4c/source/data/region/
Dvi.txt6 002{"Châu Phi"}
10 011{"Tây Phi"}
12 014{"Đông Phi"}
13 015{"Bắc Phi"}
14 017{"Trung Phi"}
15 018{"Miền Nam Châu Phi"}
76 CF{"Cộng hòa Trung Phi"}
291 ZA{"Nam Phi"}
/external/llvm/lib/Transforms/Vectorize/
DLoopVectorize.cpp353 void fixFirstOrderRecurrence(PHINode *Phi);
1398 bool isFirstOrderRecurrence(const PHINode *Phi);
1507 void addInductionPhi(PHINode *Phi, const InductionDescriptor &ID,
2035 PHINode *Phi = dyn_cast_or_null<PHINode>(Ptr); in isConsecutivePtr() local
2036 if (Phi && Inductions.count(Phi)) { in isConsecutivePtr()
2037 InductionDescriptor II = Inductions[Phi]; in isConsecutivePtr()
2049 Phi = dyn_cast<PHINode>(GpPtr); in isConsecutivePtr()
2050 if (Phi && Inductions.count(Phi)) { in isConsecutivePtr()
2062 InductionDescriptor II = Inductions[Phi]; in isConsecutivePtr()
3501 for (PHINode *Phi : PHIsToFix) { in vectorizeLoop()
[all …]
/external/v8/src/compiler/
Ddiamond.h52 Node* Phi(MachineRepresentation rep, Node* tv, Node* fv) { in Phi() function
53 return graph->NewNode(common->Phi(rep, 2), tv, fv, merge); in Phi()
/external/llvm/lib/CodeGen/
DMachinePipeliner.cpp410 unsigned PhiNum, MachineInstr *Phi,
672 bool isLoopCarried(SwingSchedulerDAG *SSD, MachineInstr &Phi);
917 static void getPhiRegs(MachineInstr &Phi, MachineBasicBlock *Loop, in getPhiRegs() argument
919 assert(Phi.isPHI() && "Expecting a Phi."); in getPhiRegs()
923 for (unsigned i = 1, e = Phi.getNumOperands(); i != e; i += 2) in getPhiRegs()
924 if (Phi.getOperand(i + 1).getMBB() != Loop) in getPhiRegs()
925 InitVal = Phi.getOperand(i).getReg(); in getPhiRegs()
926 else if (Phi.getOperand(i + 1).getMBB() == Loop) in getPhiRegs()
927 LoopVal = Phi.getOperand(i).getReg(); in getPhiRegs()
933 static unsigned getInitPhiReg(MachineInstr &Phi, MachineBasicBlock *LoopBB) { in getInitPhiReg() argument
[all …]
/external/llvm/test/CodeGen/Generic/
D2003-05-30-BadPreselectPhi.ll7 ;; Error: PreSelection puts the arguments of the Phi just before
8 ;; the Phi instead of in predecessor blocks. This later
/external/swiftshader/third_party/LLVM/test/CodeGen/Generic/
D2003-05-30-BadPreselectPhi.ll7 ;; Error: PreSelection puts the arguments of the Phi just before
8 ;; the Phi instead of in predecessor blocks. This later
/external/llvm/lib/Target/Hexagon/
DHexagonHardwareLoops.cpp217 bool phiMayWrapOrUnderflow(MachineInstr *Phi, const MachineOperand *EndVal,
409 MachineInstr *Phi = &*I; in findInductionRegister() local
414 for (unsigned i = 1, n = Phi->getNumOperands(); i < n; i += 2) { in findInductionRegister()
415 if (Phi->getOperand(i+1).getMBB() != Latch) in findInductionRegister()
418 unsigned PhiOpReg = Phi->getOperand(i).getReg(); in findInductionRegister()
429 if (MRI->getVRegDef(IndReg) == Phi && checkForImmediate(Opnd2, V)) { in findInductionRegister()
1350 MachineInstr *Phi, const MachineOperand *EndVal, MachineBasicBlock *MBB, in phiMayWrapOrUnderflow() argument
1352 assert(Phi->isPHI() && "Expecting a Phi."); in phiMayWrapOrUnderflow()
1355 for (int i = 1, n = Phi->getNumOperands(); i < n; i += 2) in phiMayWrapOrUnderflow()
1356 if (isLoopFeeder(L, MBB, Phi, &(Phi->getOperand(i)), LoopFeederPhi)) in phiMayWrapOrUnderflow()
[all …]

123456