HomeSort by relevance Sort by last modified time
    Searched refs:Phi (Results 1 - 25 of 81) sorted by null

1 2 3 4

  /external/llvm/lib/Transforms/Utils/
LoopUtils.cpp 70 RecurrenceDescriptor::lookThroughAnd(PHINode *Phi, Type *&RT,
73 if (!Phi->hasOneUse())
74 return Phi;
77 Instruction *I, *J = cast<Instruction>(Phi->use_begin()->getUser());
85 RT = IntegerType::get(Phi->getContext(), Bits);
86 Visited.insert(Phi);
91 return Phi;
155 bool RecurrenceDescriptor::AddReductionVar(PHINode *Phi, RecurrenceKind Kind,
158 if (Phi->getNumIncomingValues() != 2)
162 if (Phi->getParent() != TheLoop->getHeader()
    [all...]
  /external/llvm/lib/Target/AMDGPU/
SIAnnotateControlFlow.cpp 78 bool isElse(PHINode *Phi);
80 void eraseIfUnused(PHINode *Phi);
170 /// \brief Can the condition represented by this PHI node treated like
172 bool SIAnnotateControlFlow::isElse(PHINode *Phi) {
173 BasicBlock *IDom = DT->getNode(Phi->getParent())->getIDom()->getBlock();
174 for (unsigned i = 0, e = Phi->getNumIncomingValues(); i != e; ++i) {
175 if (Phi->getIncomingBlock(i) == IDom) {
177 if (Phi->getIncomingValue(i) != BoolTrue)
181 if (Phi->getIncomingValue(i) != BoolFalse)
189 // \brief Erase "Phi" if it is not used any mor
    [all...]
  /external/clang/lib/Analysis/
ThreadSafetyTIL.cpp 61 if (Phi* Ph = dyn_cast<Phi>(E)) {
73 if (Phi* Ph = dyn_cast<Phi>(E)) {
81 // Phi nodes to find the canonical definition.
90 if (const Phi *Ph = dyn_cast<Phi>(E)) {
91 if (Ph->status() == Phi::PH_SingleVal) {
103 // Phi nodes to find the canonical definition.
104 // The non-const version will simplify incomplete Phi nodes
    [all...]
ThreadSafetyCommon.cpp 61 // Return true if E is a variable that points to an incomplete Phi node.
63 if (const auto *Ph = dyn_cast<til::Phi>(E))
64 return Ph->status() == til::Phi::PH_Incomplete;
302 if (auto *Ph = dyn_cast<til::Phi>(E))
666 // Make a Phi node in the current block for the i^th variable in CurrentVarMap.
667 // If E != null, sets Phi[CurrentBlockInfo->ArgIndex] = E.
675 // We already have a Phi node in the current block,
676 // so just add the new variable to the Phi node.
677 til::Phi *Ph = dyn_cast<til::Phi>(CurrE)
    [all...]
  /external/llvm/lib/Transforms/Scalar/
PartiallyInlineLibCalls.cpp 126 // dst = phi(v0, v1)
130 // Create phi and replace all uses.
133 PHINode *Phi = Builder.CreatePHI(Call->getType(), 2);
134 Call->replaceAllUsesWith(Phi);
153 // Add phi operands.
154 Phi->addIncoming(Call, &CurrBB);
155 Phi->addIncoming(LibCall, LibCallBB);
IndVarSimplify.cpp 216 /// loop. For PHI nodes, there may be multiple uses, so compute the nearest
220 PHINode *PHI = dyn_cast<PHINode>(User);
221 if (!PHI)
225 for (unsigned i = 0, e = PHI->getNumIncomingValues(); i != e; ++i) {
226 if (PHI->getIncomingValue(i) != Def)
229 BasicBlock *InsertBB = PHI->getIncomingBlock(i);
237 assert(InsertPt && "Missing phi operand");
296 // If this is not an add of the PHI with a constantfp, or if the constant fp
500 // Collect information about PHI nodes which can be transformed in
551 // Because of LCSSA, these values will only occur in LCSSA PHI Nodes. Sca
    [all...]
StructurizeCFG.cpp 142 /// The condition for the optional "Else" region is expressed as a PHI node.
143 /// The incomming values of the PHI node are true for the "If" edge and false
161 /// consist of a network of PHI nodes where the true incoming values expresses
557 /// \brief Remove all PHI values coming from "From" into "To" and remember
564 PHINode &Phi = cast<PHINode>(*I++);
565 while (Phi.getBasicBlockIndex(From) != -1) {
566 Value *Deleted = Phi.removeIncomingValue(From, false);
567 Map[&Phi].push_back(std::make_pair(From, Deleted));
572 /// \brief Add a dummy PHI value as soon as we knew the new predecessor
577 PHINode &Phi = cast<PHINode>(*I++)
    [all...]
  /external/v8/src/compiler/
diamond.h 52 Node* Phi(MachineRepresentation rep, Node* tv, Node* fv) {
53 return graph->NewNode(common->Phi(rep, 2), tv, fv, merge);
select-lowering.cc 31 // Create a diamond and a phi.
36 NodeProperties::ChangeOp(node, common()->Phi(p.representation(), 2));
  /external/v8/test/unittests/compiler/
register-allocator-unittest.cc 116 auto phi = Phi(i_reg, 2); local
117 auto ipp = EmitOI(Same(), Reg(phi), Use(DefineConstant()));
118 SetInput(phi, 1, ipp);
180 Return(Reg(Phi(t_val, f_val)));
210 merged[i] = Use(Phi(t_vals[i], f_vals[i]));
249 merged[i] = Use(Phi(vals[i], vals[i]));
280 phis[i] = Phi(parameters[i], 2);
284 // something like phi[i] += const
320 auto phi = Phi(left, right) local
439 auto phi = Phi(l_phi, r_phi); local
486 auto phi = Phi(l_phi, r_phi); local
    [all...]
scheduler-unittest.cc 117 Node* phi = local
118 graph->NewNode(common->Phi(MachineRepresentation::kTagged, 2), tv, fv, m);
119 return phi;
176 g->NewNode(common()->Phi(MachineRepresentation::kWord32, 2), n1, n7, n13);
243 common()->Phi(MachineRepresentation::kTagged, 2), ttrue, ffalse, m1);
247 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
251 Node* ret = graph()->NewNode(common()->Return(), phi, ephi1, start);
273 common()->Phi(MachineRepresentation::kTagged, 2), p0, p1, mA1);
280 common()->Phi(MachineRepresentation::kTagged, 2), p0, p1, mB1)
330 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
477 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
509 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
534 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
563 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
606 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 3), local
630 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 3), local
    [all...]
branch-elimination-unittest.cc 58 graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 2),
65 graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 2),
100 graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 2),
106 graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 2),
134 graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 2),
142 graph()->NewNode(common()->Phi(MachineRepresentation::kWord32, 2),
common-operator-reducer-unittest.cc 240 // Phi
262 &editor, graph()->NewNode(common()->Phi(rep, value_input_count),
276 Node* const phi = graph()->NewNode( local
277 common()->Phi(MachineRepresentation::kTagged, 2), p0, p0, loop);
278 phi->ReplaceInput(1, phi);
281 Reduction const r = Reduce(&editor, phi);
297 Node* phi = graph()->NewNode( local
298 common()->Phi(MachineRepresentation::kFloat32, 2), vtrue, vfalse, merge);
301 Reduction r = Reduce(&editor, phi);
317 Node* phi = graph()->NewNode( local
335 Node* phi = graph()->NewNode( local
353 Node* phi = graph()->NewNode( local
371 Node* phi = graph()->NewNode( local
389 Node* phi = graph()->NewNode( local
414 Node* phi = graph()->NewNode(common()->Phi(MachineRepresentation::kTagged, 2), local
    [all...]
  /external/llvm/include/llvm/Transforms/Utils/
LoopUtils.h 164 /// Returns true if Phi is a reduction of type Kind and adds it to the
166 static bool AddReductionVar(PHINode *Phi, RecurrenceKind Kind, Loop *TheLoop,
170 /// Returns true if Phi is a reduction in TheLoop. The RecurrenceDescriptor is
172 static bool isReductionPHI(PHINode *Phi, Loop *TheLoop,
187 /// Returns first unsafe algebra instruction in the PHI node's use-chain.
199 /// Determines if Phi may have been type-promoted. If Phi has a single user
200 /// that ANDs the Phi with a type mask, return the user. RT is updated to
203 static Instruction *lookThroughAnd(PHINode *Phi, Type *&RT,
218 /// actual type of the Phi if the recurrence has been type-promoted
    [all...]
  /frameworks/native/services/sensorservice/
Fusion.h 82 mat<mat33_t, 2, 2> Phi;
Fusion.cpp 176 Phi[0][1] = 0;
177 Phi[1][1] = 1;
447 // P(k+1) = Phi(k)*P(k)*Phi(k)' + G*Q(k)*G'
453 // Phi = | Phi00 Phi10 |
482 Phi[0][0] = I33 - wx*(k1*ilwe) + wx2*k0;
483 Phi[1][0] = wx*k0 - I33dT - wx2*(ilwe*ilwe*ilwe)*(lwedT-k1);
490 P = Phi*P*transpose(Phi) + GQGt;
  /external/llvm/lib/Analysis/
ScalarEvolutionExpander.cpp     [all...]
  /external/llvm/lib/Target/PowerPC/
PPCBoolRetToInt.cpp 141 const PHINode *Phi = dyn_cast<PHINode>(V);
142 return !Phi || Promotable.count(Phi);
  /external/v8/test/cctest/compiler/
test-graph-visualizer.cc 36 Node* phi = local
37 graph.NewNode(common.Phi(MachineRepresentation::kTagged, 1), k, start);
38 phi->ReplaceInput(0, NULL);
39 graph.SetEnd(phi);
55 Node* phi = local
56 graph.NewNode(common.Phi(MachineRepresentation::kTagged, 1), k, start);
57 phi->ReplaceInput(1, NULL);
58 graph.SetEnd(phi);
74 Node* phi = local
75 graph.NewNode(common.Phi(MachineRepresentation::kTagged, 1), k, start)
    [all...]
test-osr.cc 94 return graph.NewNode(common.Phi(MachineRepresentation::kTagged, count),
316 Node* Phi(Node* i1, Node* i2, Node* i3) {
318 return t.graph.NewNode(t.common.Phi(MachineRepresentation::kTagged, 2),
321 return t.graph.NewNode(t.common.Phi(MachineRepresentation::kTagged, 3),
344 Node* outer_phi = outer.Phi(T.p0, T.p0, nullptr);
347 Node* osr_phi = inner.Phi(T.jsgraph.TrueConstant(), T.osr_values[0],
403 Node* outer_phi = outer.Phi(T.p0, T.p0, T.p0);
406 Node* osr_phi = inner.Phi(T.jsgraph.TrueConstant(), T.osr_values[0],
478 Node* phi = jsgraph->graph()->NewNode( local
479 jsgraph->common()->Phi(MachineRepresentation::kWord32, count), count + 1
    [all...]
test-basic-block-profiler.cc 85 Node* count = m.Phi(MachineRepresentation::kWord32, m.Parameter(0), one);
test-loop-analysis.cc 74 Node* Phi(Node* a) {
78 Node* Phi(Node* a, Node* b) {
82 Node* Phi(Node* a, Node* b, Node* c) {
86 Node* Phi(Node* a, Node* b, Node* c, Node* d) {
115 : common.Phi(MachineRepresentation::kTagged, count);
212 Node* phi; member in struct:v8::internal::compiler::Counter
223 phi = w.t.graph.NewNode(w.t.op(2, false), base, base, w.loop);
224 add = w.t.graph.NewNode(&kIntAdd, phi, inc);
225 phi->ReplaceInput(1, add);
233 Node* phi; member in struct:v8::internal::compiler::StoreLoop
270 Node* phi = t.graph.NewNode(t.common.Phi(MachineRepresentation::kTagged, 2), local
692 Node* phi = t.graph.NewNode( local
931 Node* phi = t.graph.NewNode(t.common.Phi(MachineRepresentation::kWord32, 2), local
967 Node* phi = t.graph.NewNode(t.common.Phi(MachineRepresentation::kWord32, 2), local
    [all...]
  /external/llvm/lib/Target/Hexagon/
HexagonHardwareLoops.cpp 151 /// R = phi ..., [ R.next, LatchBlock ]
215 /// \brief Return true if the Phi may generate a value that may underflow,
217 bool phiMayWrapOrUnderflow(MachineInstr *Phi, const MachineOperand *EndVal,
253 /// The desired flow is: phi ---> bump -+-> comparison-in-latch.
255 /// +-> back to phi
260 /// phi -+-> bump ---> back to phi
407 MachineInstr *Phi = &*I;
409 // Have a PHI instruction. Get the operand that corresponds to the
411 // where the "reg" is defined by the PHI node we are looking at
    [all...]
  /external/llvm/lib/Transforms/InstCombine/
InstCombinePHI.cpp 23 /// If we have something like phi [add (a,b), add(a,c)] and if a/b/c and the
24 /// adds all have a single use, turn this into a phi and a single binop.
66 // Keep track of which operand needs a phi node.
71 // If both LHS and RHS would need a PHI, don't do this transformation,
140 // We don't want to replace this phi if the replacement would require
141 // more than one phi, which leads to higher register pressure. This is
167 // Don't merge two GEPs when two operands differ (introducing phi nodes)
179 // If we already needed a PHI for an earlier operand, and another operand
180 // also requires a PHI, we'd be introducing more PHIs than we're
181 // eliminating, which increases register pressure on entry to the PHI'
    [all...]
  /external/v8/tools/turbolizer/
node.js 29 return this.opcode.endsWith('Phi') ||
135 ((this.opcode == "Phi" || this.opcode == "EffectPhi") &&

Completed in 862 milliseconds

1 2 3 4