diff options
author | Chris Lattner <sabre@nondot.org> | 2005-04-21 16:04:49 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-04-21 16:04:49 +0000 |
commit | 0f67dd6237eb7227aa58e9b77cd95f354989b891 (patch) | |
tree | bd9e22fb109c92ced2ed8d57b32e8ba4ce53307d /include/llvm/Analysis/Interval.h | |
parent | 588bbbffa1cf29201c72b8b3f04c6330f4bde2dd (diff) |
Improve doxygen documentation, patch contributed by Evan Jones!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21393 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/Interval.h')
-rw-r--r-- | include/llvm/Analysis/Interval.h | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/include/llvm/Analysis/Interval.h b/include/llvm/Analysis/Interval.h index 448bcbc803..91e1da6a01 100644 --- a/include/llvm/Analysis/Interval.h +++ b/include/llvm/Analysis/Interval.h @@ -30,14 +30,14 @@ class BasicBlock; //===----------------------------------------------------------------------===// // -// Interval Class - An Interval is a set of nodes defined such that every node -// in the interval has all of its predecessors in the interval (except for the -// header) -// +/// Interval Class - An Interval is a set of nodes defined such that every node +/// in the interval has all of its predecessors in the interval (except for the +/// header) +/// class Interval { - // HeaderNode - The header BasicBlock, which dominates all BasicBlocks in this - // interval. Also, any loops in this interval must go through the HeaderNode. - // + /// HeaderNode - The header BasicBlock, which dominates all BasicBlocks in this + /// interval. Also, any loops in this interval must go through the HeaderNode. + /// BasicBlock *HeaderNode; public: typedef std::vector<BasicBlock*>::iterator succ_iterator; @@ -53,22 +53,22 @@ public: inline BasicBlock *getHeaderNode() const { return HeaderNode; } - // Nodes - The basic blocks in this interval. - // + /// Nodes - The basic blocks in this interval. + /// std::vector<BasicBlock*> Nodes; - // Successors - List of BasicBlocks that are reachable directly from nodes in - // this interval, but are not in the interval themselves. - // These nodes necessarily must be header nodes for other intervals. - // + /// Successors - List of BasicBlocks that are reachable directly from nodes in + /// this interval, but are not in the interval themselves. + /// These nodes necessarily must be header nodes for other intervals. + /// std::vector<BasicBlock*> Successors; - // Predecessors - List of BasicBlocks that have this Interval's header block - // as one of their successors. - // + /// Predecessors - List of BasicBlocks that have this Interval's header block + /// as one of their successors. + /// std::vector<BasicBlock*> Predecessors; - // contains - Find out if a basic block is in this interval + /// contains - Find out if a basic block is in this interval inline bool contains(BasicBlock *BB) const { for (unsigned i = 0; i < Nodes.size(); ++i) if (Nodes[i] == BB) return true; @@ -77,7 +77,7 @@ public: //return find(Nodes.begin(), Nodes.end(), BB) != Nodes.end(); } - // isSuccessor - find out if a basic block is a successor of this Interval + /// isSuccessor - find out if a basic block is a successor of this Interval inline bool isSuccessor(BasicBlock *BB) const { for (unsigned i = 0; i < Successors.size(); ++i) if (Successors[i] == BB) return true; @@ -86,24 +86,24 @@ public: //return find(Successors.begin(), Successors.end(), BB) != Successors.end(); } - // Equality operator. It is only valid to compare two intervals from the same - // partition, because of this, all we have to check is the header node for - // equality. - // + /// Equality operator. It is only valid to compare two intervals from the same + /// partition, because of this, all we have to check is the header node for + /// equality. + /// inline bool operator==(const Interval &I) const { return HeaderNode == I.HeaderNode; } - // isLoop - Find out if there is a back edge in this interval... + /// isLoop - Find out if there is a back edge in this interval... bool isLoop() const; - // print - Show contents in human readable format... + /// print - Show contents in human readable format... void print(std::ostream &O) const; }; -// succ_begin/succ_end - define methods so that Intervals may be used -// just like BasicBlocks can with the succ_* functions, and *::succ_iterator. -// +/// succ_begin/succ_end - define methods so that Intervals may be used +/// just like BasicBlocks can with the succ_* functions, and *::succ_iterator. +/// inline Interval::succ_iterator succ_begin(Interval *I) { return I->Successors.begin(); } @@ -111,9 +111,9 @@ inline Interval::succ_iterator succ_end(Interval *I) { return I->Successors.end(); } -// pred_begin/pred_end - define methods so that Intervals may be used -// just like BasicBlocks can with the pred_* functions, and *::pred_iterator. -// +/// pred_begin/pred_end - define methods so that Intervals may be used +/// just like BasicBlocks can with the pred_* functions, and *::pred_iterator. +/// inline Interval::pred_iterator pred_begin(Interval *I) { return I->Predecessors.begin(); } @@ -127,7 +127,7 @@ template <> struct GraphTraits<Interval*> { static NodeType *getEntryNode(Interval *I) { return I; } - // nodes_iterator/begin/end - Allow iteration over all nodes in the graph + /// nodes_iterator/begin/end - Allow iteration over all nodes in the graph static inline ChildIteratorType child_begin(NodeType *N) { return succ_begin(N); } |