Home
last modified time | relevance | path

Searched refs:DFS (Results 1 – 25 of 35) sorted by relevance

12

/openbsd-src/gnu/llvm/llvm/include/llvm/Analysis/
H A DLoopIterator.h174 LoopBlocksDFS DFS;
177 LoopBlocksRPO(Loop *Container) : DFS(Container) {} in LoopBlocksRPO()
181 DFS.perform(LI); in perform()
185 LoopBlocksDFS::RPOIterator begin() const { return DFS.beginRPO(); } in begin()
186 LoopBlocksDFS::RPOIterator end() const { return DFS.endRPO(); } in end()
206 LoopBlocksDFS &DFS;
211 DFS(Storage), LI(LInfo) {} in LoopBlocksTraversal()
217 assert(DFS.PostBlocks.empty() && "Need clear DFS result before traversing"); in begin()
218 assert(DFS.L->getNumBlocks() && "po_iterator cannot handle an empty graph"); in begin()
219 return po_ext_begin(DFS.L->getHeader(), *this); in begin()
[all …]
H A DLoopInfoImpl.h581 PopulateLoopsDFS<BlockT, LoopT> DFS(this); in analyze()
582 DFS.traverse(DomRoot->getBlock()); in analyze()
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Instrumentation/
H A DDataFlowSanitizer.cpp572 DataFlowSanitizer &DFS; member
608 DFSanFunction(DataFlowSanitizer &DFS, Function *F, bool IsNativeABI, in DFSanFunction()
610 : DFS(DFS), F(F), IsNativeABI(IsNativeABI), in DFSanFunction()
971 Type *ShadowTy = DFS.getShadowTy(T); in expandFromPrimitiveShadow()
976 if (DFS.isZeroShadow(PrimitiveShadow)) in expandFromPrimitiveShadow()
977 return DFS.getZeroShadow(ShadowTy); in expandFromPrimitiveShadow()
994 return DFS.ZeroPrimitiveShadow; in collapseAggregateShadow()
1045 if (DFS.shouldTrackOrigins()) { in addConditionalCallbacksIfEnabled()
1047 CI = IRB.CreateCall(DFS.DFSanConditionalCallbackOriginFn, in addConditionalCallbacksIfEnabled()
1050 CI = IRB.CreateCall(DFS.DFSanConditionalCallbackFn, {CondShadow}); in addConditionalCallbacksIfEnabled()
[all …]
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Scalar/
H A DLoopSimplifyCFG.cpp119 LoopBlocksDFS DFS; member in __anon70582c810111::ConstantTerminatorFoldingImpl
184 bool hasIrreducibleCFG(LoopBlocksDFS &DFS) { in hasIrreducibleCFG() argument
185 assert(DFS.isComplete() && "DFS is expected to be finished"); in hasIrreducibleCFG()
189 for (auto I = DFS.beginRPO(), E = DFS.endRPO(); I != E; ++I) in hasIrreducibleCFG()
192 for (auto I = DFS.beginRPO(), E = DFS.endRPO(); I != E; ++I) { in hasIrreducibleCFG()
207 DFS.perform(&LI); in analyze()
208 assert(DFS.isComplete() && "DFS is expected to be finished"); in analyze()
217 if (hasIrreducibleCFG(DFS)) { in analyze()
224 for (auto I = DFS.beginRPO(), E = DFS.endRPO(); I != E; ++I) { in analyze()
300 for (auto I = DFS.beginPostorder(), E = DFS.endPostorder(); I != E; ++I) { in analyze()
[all …]
/openbsd-src/gnu/llvm/lldb/examples/scripting/
H A Dtree_utils.py22 def DFS(root, word, cur_path): function
65 return DFS(left_child_ptr, word, cur_path)
74 return DFS(right_child_ptr, word, cur_path)
/openbsd-src/gnu/llvm/lldb/docs/use/
H A Dpython.rst61 root to the node containing the word. This is what our DFS function in
67 1: def DFS (root, word, cur_path):
85 19: return DFS (left_child_ptr, word, cur_path)
91 25: return DFS (right_child_ptr, word, cur_path)
100 the DFS function. The first parameter is going to be a node in our
132 the header file SBValue.h. The `SBValue` methods that we use in our DFS function
136 Explaining DFS Script in Detail
152 Lines 2-11 of DFS are getting data out of the current tree node and getting
154 Lines 2-4 of our DFS function get the word, left and right fields out of the
171 One other note: Typing something as long as our DFS function directly into the
[all …]
/openbsd-src/gnu/llvm/llvm/lib/Analysis/
H A DDDG.cpp205 LoopBlocksDFS DFS(&L); in DataDependenceGraph() local
206 DFS.perform(&LI); in DataDependenceGraph()
208 append_range(BBList, make_range(DFS.beginRPO(), DFS.endRPO())); in DataDependenceGraph()
H A DLoopInfo.cpp685 LoopBlocksDFS DFS; member in __anon81a2c2600511::UnloopUpdater
698 UnloopUpdater(Loop *UL, LoopInfo *LInfo) : Unloop(*UL), LI(LInfo), DFS(UL) {} in UnloopUpdater()
717 LoopBlocksTraversal Traversal(DFS, LI); in updateBlockParents()
745 for (LoopBlocksDFS::POIterator POI = DFS.beginPostorder(), in updateBlockParents()
746 POE = DFS.endPostorder(); in updateBlockParents()
832 assert((FoundIB || !DFS.hasPostorder(*I)) && "should have seen IB"); in getNearestLoop()
H A DVectorUtils.cpp1155 LoopBlocksDFS DFS(TheLoop); in collectConstStrideAccesses() local
1156 DFS.perform(LI); in collectConstStrideAccesses()
1157 for (BasicBlock *BB : make_range(DFS.beginRPO(), DFS.endRPO())) in collectConstStrideAccesses()
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/
H A DScheduleDAGInstrs.cpp1464 SchedDAGReverseDFS DFS; in compute() local
1466 DFS.follow(&SU); in compute()
1469 while (DFS.getPred() != DFS.getPredEnd()) { in compute()
1470 const SDep &PredDep = *DFS.getPred(); in compute()
1471 DFS.advance(); in compute()
1479 Impl.visitCrossEdge(PredDep, DFS.getCurr()); in compute()
1483 DFS.follow(PredDep.getSUnit()); in compute()
1486 const SUnit *Child = DFS.getCurr(); in compute()
1487 const SDep *PredDep = DFS.backtrack(); in compute()
1490 Impl.visitPostorderEdge(*PredDep, DFS.getCurr()); in compute()
[all …]
H A DScheduleDAG.cpp557 DFS(Y, UpperBound, HasLoop); in AddPred()
570 void ScheduleDAGTopologicalSort::DFS(const SUnit *SU, int UpperBound, in DFS() function in ScheduleDAGTopologicalSort
736 DFS(TargetSU, UpperBound, HasLoop); in IsReachable()
H A DMachineScheduler.cpp3937 const SchedDFSResult *DFS = DAG->hasVRegLiveness() ? in getNodeLabel() local
3940 if (DFS) in getNodeLabel()
3941 SS << " I:" << DFS->getNumInstrs(SU); in getNodeLabel()
3952 const SchedDFSResult *DFS = DAG->hasVRegLiveness() ? in getNodeAttributes() local
3954 if (DFS) { in getNodeAttributes()
3956 Str += DOT::getColorString(DFS->getSubtreeID(N)); in getNodeAttributes()
/openbsd-src/gnu/llvm/llvm/docs/
H A DCycleTerminology.rst29 with respect to this particular DFS. The header is always an entry node.
41 is always chosen as the header of some cycle C regardless of the DFS
118 This hierarchy arises when DFS visits the blocks in the order ``A``,
221 DFS, consider the smallest cycle C which contains P. For the sake
253 Although the cycle hierarchy depends on the DFS chosen, reducible
257 DFS, then there exists a cycle ``C'`` in every DFS with header
H A DConvergenceAndUniformity.rst492 analysis without being affected by DFS choices made in the underlying
682 If ``C`` is a reducible cycle with header ``H``, then in any DFS,
684 ``C'`` that contains ``C``. Independent of the DFS, there is no entry
/openbsd-src/gnu/llvm/clang/lib/StaticAnalyzer/Core/
H A DWorkList.cpp36 class DFS : public WorkList { class
82 return std::make_unique<DFS>(); in makeDFS()
H A DAnalyzerOptions.cpp70 .Case("dfs", ExplorationStrategyKind::DFS) in getExplorationStrategy()
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Utils/
H A DLoopUnroll.cpp493 LoopBlocksDFS DFS(L); in UnrollLoop() local
494 DFS.perform(LI); in UnrollLoop()
497 LoopBlocksDFS::RPOIterator BlockBegin = DFS.beginRPO(); in UnrollLoop()
498 LoopBlocksDFS::RPOIterator BlockEnd = DFS.endRPO(); in UnrollLoop()
H A DLoopUnrollAndJam.cpp338 LoopBlocksDFS DFS(L); in UnrollAndJamLoop() local
339 DFS.perform(LI); in UnrollAndJamLoop()
341 LoopBlocksDFS::RPOIterator BlockBegin = DFS.beginRPO(); in UnrollAndJamLoop()
342 LoopBlocksDFS::RPOIterator BlockEnd = DFS.endRPO(); in UnrollAndJamLoop()
/openbsd-src/gnu/llvm/llvm/lib/Transforms/IPO/
H A DPartialInlining.cpp462 std::vector<BasicBlock *> DFS; in computeOutliningColdRegionsInfo() local
464 DFS.push_back(CurrEntry); in computeOutliningColdRegionsInfo()
473 while (!DFS.empty()) { in computeOutliningColdRegionsInfo()
474 auto *ThisBB = DFS.back(); in computeOutliningColdRegionsInfo()
475 DFS.pop_back(); in computeOutliningColdRegionsInfo()
486 DFS.push_back(*SI); in computeOutliningColdRegionsInfo()
/openbsd-src/gnu/llvm/lldb/source/Target/
H A DStackFrameList.cpp290 struct DFS { in FindInterveningFrames() struct
300 DFS(Function *end, ModuleList &images, Target &target, in FindInterveningFrames() argument
348 DFS(&end, images, target, exe_ctx).search(*first_edge, *first_callee, path); in FindInterveningFrames()
/openbsd-src/gnu/llvm/llvm/docs/HistoricalNotes/
H A D2003-06-25-Reoptimizer1.txt33 1) Do a DFS from the first machine-code basic block of the hot loop
36 2) Do a DFS from the last machine-code basic block of the hot loop
/openbsd-src/gnu/llvm/clang/include/clang/StaticAnalyzer/Core/
H A DAnalyzerOptions.h108 DFS, enumerator
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/LiveDebugValues/
H A DInstrRefBasedImpl.cpp3055 DFS; in getBlocksForScope() local
3064 DFS.push_back({succ, succ->succ_begin()}); in getBlocksForScope()
3068 while (!DFS.empty()) { in getBlocksForScope()
3069 const MachineBasicBlock *CurBB = DFS.back().first; in getBlocksForScope()
3070 MachineBasicBlock::const_succ_iterator &CurSucc = DFS.back().second; in getBlocksForScope()
3073 DFS.pop_back(); in getBlocksForScope()
3081 DFS.push_back({*CurSucc, (*CurSucc)->succ_begin()}); in getBlocksForScope()
/openbsd-src/gnu/llvm/llvm/lib/Target/ARM/
H A DARMLowOverheadLoops.cpp1812 PostOrderLoopTraversal DFS(LoLoop.ML, *MLI); in Expand() local
1813 DFS.ProcessLoop(); in Expand()
1814 const SmallVectorImpl<MachineBasicBlock*> &PostOrder = DFS.getOrder(); in Expand()
/openbsd-src/gnu/llvm/llvm/include/llvm/CodeGen/
H A DScheduleDAG.h714 void DFS(const SUnit *SU, int UpperBound, bool& HasLoop);

12