HomeSort by: relevance | last modified time | path
    Searched refs:Incoming (Results 1 - 25 of 31) sorted by relevancy

1 2

  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
StatepointLowering.cpp 187 // All incoming values should have same known stack slot, otherwise result
240 static bool willLowerDirectly(SDValue Incoming) {
243 if (isa<FrameIndexSDNode>(Incoming))
250 if (Incoming.getValueType().getSizeInBits() > 64)
253 return (isa<ConstantSDNode>(Incoming) || isa<ConstantFPSDNode>(Incoming) ||
254 Incoming.isUndef());
257 /// Try to find existing copies of the incoming values in stack slots used for
258 /// statepoint spilling. If we can find a spill slot for the incoming value,
264 SDValue Incoming = Builder.getValue(IncomingValue)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/SystemZ/
SystemZHazardRecognizer.cpp 451 copyState(SystemZHazardRecognizer *Incoming) {
453 CurrGroupSize = Incoming->CurrGroupSize;
454 LLVM_DEBUG(CurGroupDbg = Incoming->CurGroupDbg;);
457 ProcResourceCounters = Incoming->ProcResourceCounters;
458 CriticalResourceIdx = Incoming->CriticalResourceIdx;
461 LastFPdOpCycleIdx = Incoming->LastFPdOpCycleIdx;
462 GrpCount = Incoming->GrpCount;
SystemZHazardRecognizer.h 156 void copyState(SystemZHazardRecognizer *Incoming);
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
ReachingDefAnalysis.cpp 80 const LiveRegsDefInfo &Incoming = MBBOutRegsInfos[pred->getNumber()];
81 // Incoming is null if this is a backedge from a BB
83 if (Incoming.empty())
88 LiveRegs[Unit] = std::max(LiveRegs[Unit], Incoming[Unit]);
153 // there is now a more recent incoming reaching definition from a predecessor.
157 const LiveRegsDefInfo &Incoming = MBBOutRegsInfos[pred->getNumber()];
158 // Incoming may be empty for dead predecessors.
159 if (Incoming.empty())
163 int Def = Incoming[Unit];
440 SmallPtrSet<MachineInstr*, 2> Incoming;
    [all...]
ExecutionDomainFix.cpp 172 LiveRegsDVInfo &Incoming = MBBOutRegsInfos[pred->getNumber()];
173 // Incoming is null if this is a backedge from a BB
175 if (Incoming.empty())
179 DomainValue *pdv = resolve(Incoming[rx]);
287 // Scan the explicit use operands for incoming domains.
328 // incoming DomainValues that we want to merge.
ModuloSchedule.cpp 50 /// Return the Phi register value that comes from the incoming block.
471 // from the incoming block.
831 /// Remove the incoming block from the Phis in a basic block.
832 static void removePhis(MachineBasicBlock *BB, MachineBasicBlock *Incoming) {
837 if (MI.getOperand(i + 1).getMBB() == Incoming) {
1966 // Prolog always falls through; remove incoming values in epilog.
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
UnifyLoopExits.cpp 81 // for creating the new PHI is well-known, and also the set of incoming blocks
84 const SetVector<BasicBlock *> &Incoming,
115 auto NewPhi = PHINode::Create(Def->getType(), Incoming.size(),
118 for (auto In : Incoming) {
BasicBlockUtils.cpp 1014 // If all incoming values for the new PHI would be the same, just don't
1015 // make a new PHI. Instead, just remove the incoming values from the old
1020 // second off, this ensures that the indices for the incoming values
1026 // Add an incoming value to the PHI node in the loop for the preheader
1040 // second off, this ensures that the indices for the incoming values aren't
1117 // node becomes an incoming value for BB's phi node. However, if the Preds
1121 // Insert dummy values as the incoming value.
1505 // doesn't have incoming edges from other blocks. If it does, the condition
1553 // that are incoming blocks to the hub are now replaced by just one edge from
1558 // new use: If the block Out is in the list of Incoming blocks, then the newl
    [all...]
LoopUnroll.cpp 617 // the incoming values from the previous block.
639 Value *Incoming = PHI.getIncomingValueForBlock(*BB);
640 ValueToValueMapTy::iterator It = LastValueMap.find(Incoming);
642 Incoming = It->second;
643 PHI.addIncoming(Incoming, New);
699 // Loop over the PHI nodes in the original block, setting incoming values.
732 // Preserve the incoming value from BB if we are jumping to the block
LoopUtils.cpp 604 // other incoming values. Given the loop has dedicated exits, all other
605 // incoming values must be from the exiting blocks.
608 // Removes all incoming values from all other exiting blocks (including
611 // NOTE! We need to remove Incoming Values in the reverse order as done
1223 unsigned Ith; // For which incoming value?
1224 const SCEV *ExpansionSCEV; // The SCEV of the incoming value we are rewriting.
1260 Value *Incoming = P->getIncomingValueForBlock(ExitingBlocks[0]);
1262 // If the Incoming value of P is found in RewritePhiSet, we know it
1270 if (Phi.PN == P && (Phi.PN)->getIncomingValue(i) == Incoming) {
1277 if (!found && (I = dyn_cast<Instruction>(Incoming)))
    [all...]
SimplifyIndVar.cpp 235 Value *Incoming = PN->getIncomingValue(Idx);
236 const SCEV *IncomingS = SE->getSCEV(Incoming);
237 CheapExpansions[IncomingS] = Incoming;
1125 /// common dominator for the incoming blocks. A nullptr can be returned if no
  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
DependenceGraphBuilder.cpp 99 // 2. Identify incoming edges incident to the nodes inside of the SCC and
144 Incoming, // Incoming edges to the SCC
154 // There is a flag defined for each direction (incoming vs outgoing) and
184 << (Dir == Direction::Incoming ? "incoming)" : "outgoing)")
187 assert((Dir == Direction::Incoming || Dir == Direction::Outgoing) &&
195 if (Dir == Direction::Incoming) {
211 // Process incoming edges incident to the pi-block node.
212 reconnectEdges(N, SCCNode, &PiNode, Direction::Incoming);
    [all...]
LoopInfo.cpp 124 bool Loop::getIncomingAndBackEdge(BasicBlock *&Incoming,
128 Incoming = nullptr;
135 Incoming = *PI++;
139 if (contains(Incoming)) {
142 std::swap(Incoming, Backedge);
146 assert(Incoming && Backedge && "expected non-null incoming and backedges");
153 BasicBlock *Incoming = nullptr, *Backedge = nullptr;
154 if (!getIncomingAndBackEdge(Incoming, Backedge))
161 dyn_cast<ConstantInt>(PN->getIncomingValueForBlock(Incoming)))
    [all...]
InstructionSimplify.cpp 510 /// try to simplify the binop by seeing whether evaluating it on the incoming
534 // Evaluate the BinOp on the incoming phi values.
536 for (Value *Incoming : PI->incoming_values()) {
537 // If the incoming value is the phi node itself, it can safely be skipped.
538 if (Incoming == PI) continue;
540 SimplifyBinOp(Opcode, Incoming, RHS, Q, MaxRecurse) :
541 SimplifyBinOp(Opcode, LHS, Incoming, Q, MaxRecurse);
553 /// comparison by seeing whether comparing with all of the incoming phi values
574 // Evaluate the BinOp on the incoming phi values.
577 Value *Incoming = PI->getIncomingValue(u)
    [all...]
LazyValueInfo.cpp 1746 // predicate back along each incoming edge to see if we can prove it
1774 // questions about the predicate as applied to the incoming value along
1776 // known along all incoming edges.
1781 Value *Incoming = PHI->getIncomingValue(i);
1784 Tristate Result = getPredicateOnEdge(Pred, Incoming, C, PredBB, BB,
1800 // on all incoming edges.
1808 // Check that all remaining incoming values match the first one.
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
CorrelatedValuePropagation.cpp 55 STATISTIC(NumPhiCommon, "Number of phis deleted via common incoming value");
148 /// Try to simplify a phi with constant incoming values that match the edge
161 // Collect incoming constants and initialize possible common value.
165 Value *Incoming = P->getIncomingValue(i);
166 if (auto *IncomingConstant = dyn_cast<Constant>(Incoming)) {
170 CommonValue = Incoming;
171 } else if (Incoming != CommonValue) {
180 // The common value must be valid in all incoming blocks.
186 // We have a phi with exactly 1 variable incoming value and 1 or more constant
187 // incoming values. See if all constant incoming values can be mapped back t
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
InstCombinePHI.cpp 190 "Not enough available ptr typed incoming values");
321 // incoming basic block.
326 for (auto Incoming : zip(PN.blocks(), PN.incoming_values()))
328 cast<InsertValueInst>(std::get<1>(Incoming))->getOperand(OpIdx),
329 std::get<0>(Incoming));
359 // in each incoming basic block.
364 for (auto Incoming : zip(PN.blocks(), PN.incoming_values()))
366 cast<ExtractValueInst>(std::get<1>(Incoming))->getAggregateOperand(),
367 std::get<0>(Incoming));
808 // All incoming values are zexts or constants that are safe to truncate
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
SIInsertWaitcnts.cpp 369 std::unique_ptr<WaitcntBrackets> Incoming;
1644 if (BI.Incoming) {
1646 Brackets = std::make_unique<WaitcntBrackets>(*BI.Incoming);
1648 *Brackets = *BI.Incoming;
1664 if (!SuccBI.Incoming) {
1671 SuccBI.Incoming = std::make_unique<WaitcntBrackets>(*Brackets);
1673 } else if (SuccBI.Incoming->merge(*Brackets)) {
1680 MoveBracketsToSucc->Incoming = std::move(Brackets);
  /src/external/apache2/llvm/dist/llvm/bindings/ocaml/llvm/
llvm_ocaml.c 1602 value llvm_add_incoming(value Incoming, LLVMValueRef PhiNode) {
1603 LLVMAddIncoming(PhiNode, (LLVMValueRef *)&Field(Incoming, 0),
1604 (LLVMBasicBlockRef *)&Field(Incoming, 1), 1);
2216 LLVMValueRef llvm_build_phi(value Incoming, value Name, value B) {
2220 assert(Incoming != Val_int(0) && "Empty list passed to Llvm.build_phi!");
2222 Hd = Field(Incoming, 0);
2227 for (Tl = Incoming; Tl != Val_int(0); Tl = Field(Tl, 1)) {
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/ObjCARC/
ObjCARCOpts.cpp 1104 // If Arg is a PHI, and one or more incoming values to the
1108 // call could be pushed up to just those paths with non-null incoming
1125 // Determine if the PHI has any null operands, or any incoming
1130 Value *Incoming = GetRCIdentityRoot(PN->getIncomingValue(i));
1131 if (IsNullOrUndef(Incoming))
1186 Value *Incoming = GetRCIdentityRoot(PN->getIncomingValue(i));
1187 if (IsNullOrUndef(Incoming))
1201 Worklist.push_back(std::make_pair(Clone, Incoming));
  /src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/
HexagonHardwareLoops.cpp 571 "Loop must have more than one incoming edge!");
575 MachineBasicBlock *Incoming = *PI++;
579 // Make sure there is one incoming and one backedge and determine which
581 if (L->contains(Incoming)) {
584 std::swap(Incoming, Backedge);
  /src/external/apache2/llvm/dist/llvm/include/llvm/Support/
GenericDomTreeConstruction.h 373 // exist -- we won't see any outgoing or incoming edges to them, so it's
879 // Used the discovered edges and inset discovered connecting (incoming)
892 const TreeNodePtr Incoming,
910 SNCA.attachNewSubtree(DT, Incoming);
  /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
LoopInfo.h 592 /// Obtain the unique incoming and back edge. Return false if they are
594 bool getIncomingAndBackEdge(BasicBlock *&Incoming,
  /src/external/apache2/llvm/dist/llvm/lib/IR/
Instructions.cpp 107 // removeIncomingValue - Remove an incoming value. This is useful if a
154 return nullptr; // Incoming values not all the same.
167 /// unique non-undef incoming value need not dominate the PHI node.
171 Value *Incoming = getIncomingValue(i);
172 if (Incoming != this && !isa<UndefValue>(Incoming)) {
173 if (ConstantValue && ConstantValue != Incoming)
175 ConstantValue = Incoming;
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/
LoopVectorize.cpp 609 /// means we need to add the appropriate incoming value from the middle
3537 // The new PHI merges the original incoming value, in case of a bypass,
3772 // don't already have an incoming value for the middle block.
4114 // stage #2: We now need to fix the recurrences by adding incoming edges to
4117 // the incoming edges.
4243 Value *Incoming = VecPhi;
4250 ? Builder.CreateVectorSplice(Incoming, PreviousPart, -1)
4251 : Incoming;
4255 Incoming = PreviousPart;
4259 VecPhi->addIncoming(Incoming, LI->getLoopFor(LoopVectorBody)->getLoopLatch())
    [all...]

Completed in 43 milliseconds

1 2