reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
32 class Interval;
88 inline bool operator==(const Interval &I) const { 102 inline Interval::succ_iterator succ_begin(Interval *I) { 102 inline Interval::succ_iterator succ_begin(Interval *I) { 105 inline Interval::succ_iterator succ_end(Interval *I) { 105 inline Interval::succ_iterator succ_end(Interval *I) { 112 inline Interval::pred_iterator pred_begin(Interval *I) { 112 inline Interval::pred_iterator pred_begin(Interval *I) { 115 inline Interval::pred_iterator pred_end(Interval *I) { 115 inline Interval::pred_iterator pred_end(Interval *I) { 120 using NodeRef = Interval *; 121 using ChildIteratorType = Interval::succ_iterator; 123 static NodeRef getEntryNode(Interval *I) { return I; } 131 using NodeRef = Interval *; 132 using ChildIteratorType = Interval::pred_iterator; 134 static NodeRef getEntryNode(Inverse<Interval *> G) { return G.Graph; }include/llvm/Analysis/IntervalIterator.h
56 inline BasicBlock *getNodeHeader(Interval *I) { return I->getHeaderNode(); } 64 inline Interval *getSourceGraphNode(IntervalPartition *IP, BasicBlock *BB) { 72 inline void addNodeToInterval(Interval *Int, BasicBlock *BB) { 82 inline void addNodeToInterval(Interval *Int, Interval *I) { 82 inline void addNodeToInterval(Interval *Int, Interval *I) { 90 std::vector<std::pair<Interval *, typename Interval::succ_iterator>> IntStack; 90 std::vector<std::pair<Interval *, typename Interval::succ_iterator>> IntStack; 134 const Interval *operator*() const { return IntStack.back().first; } 135 Interval *operator*() { return IntStack.back().first; } 136 const Interval *operator->() const { return operator*(); } 137 Interval *operator->() { return operator*(); } 144 Interval::succ_iterator &SuccIt = IntStack.back().second, 176 bool ProcessInterval(NodeTy *Node) { 181 Interval *Int = new Interval(Header); 181 Interval *Int = new Interval(Header); 200 void ProcessNode(Interval *Int, NodeTy *Node) { 200 void ProcessNode(Interval *Int, NodeTy *Node) { 246 IntervalIterator<Interval, IntervalPartition>;include/llvm/Analysis/IntervalPartition.h
43 using IntervalMapTy = std::map<BasicBlock *, Interval *>; 46 using IntervalListTy = std::vector<Interval *>; 47 Interval *RootInterval = nullptr; 48 std::vector<Interval *> Intervals; 70 inline Interval *getRootInterval() { return RootInterval; } 79 inline Interval *getBlockInterval(BasicBlock *BB) { 90 const std::vector<Interval*> &getIntervals() const { return Intervals; } 99 void addIntervalToPartition(Interval *I); 105 void updatePredecessors(Interval *Int);lib/Analysis/IntervalPartition.cpp
49 void IntervalPartition::addIntervalToPartition(Interval *I) { 53 for (Interval::node_iterator It = I->Nodes.begin(), End = I->Nodes.end(); 62 void IntervalPartition::updatePredecessors(Interval *Int) {