[llvm-commits] CVS: llvm/lib/CodeGen/InstrSched/SchedGraph.h

Tanya Brethour tbrethou at cs.uiuc.edu
Tue Jan 20 11:51:00 PST 2004


Changes in directory llvm/lib/CodeGen/InstrSched:

SchedGraph.h updated: 1.37 -> 1.38

---
Log message:


Moved iterators to common file.


---
Diffs of the changes:  (+0 -62)

Index: llvm/lib/CodeGen/InstrSched/SchedGraph.h
diff -u llvm/lib/CodeGen/InstrSched/SchedGraph.h:1.37 llvm/lib/CodeGen/InstrSched/SchedGraph.h:1.38
--- llvm/lib/CodeGen/InstrSched/SchedGraph.h:1.37	Tue Nov 11 16:41:33 2003
+++ llvm/lib/CodeGen/InstrSched/SchedGraph.h	Tue Jan 20 11:49:30 2004
@@ -180,68 +180,6 @@
 
 
 
-//********************** Sched Graph Iterators *****************************/
-
-// Ok to make it a template because it shd get instantiated at most twice:
-// for <SchedGraphNode, SchedGraphNode::iterator> and
-// for <const SchedGraphNode, SchedGraphNode::const_iterator>.
-// 
-template <class _NodeType, class _EdgeType, class _EdgeIter>
-class SGPredIterator: public bidirectional_iterator<_NodeType, ptrdiff_t> {
-protected:
-  _EdgeIter oi;
-public:
-  typedef SGPredIterator<_NodeType, _EdgeType, _EdgeIter> _Self;
-  
-  inline SGPredIterator(_EdgeIter startEdge) : oi(startEdge) {}
-  
-  inline bool operator==(const _Self& x) const { return oi == x.oi; }
-  inline bool operator!=(const _Self& x) const { return !operator==(x); }
-  
-  // operator*() differs for pred or succ iterator
-  inline _NodeType* operator*() const { return (_NodeType*)(*oi)->getSrc(); }
-  inline _NodeType* operator->() const { return operator*(); }
-  
-  inline _EdgeType* getEdge() const { return *(oi); }
-  
-  inline _Self &operator++() { ++oi; return *this; }    // Preincrement
-  inline _Self operator++(int) {                      	// Postincrement
-    _Self tmp(*this); ++*this; return tmp; 
-  }
-  
-  inline _Self &operator--() { --oi; return *this; }    // Predecrement
-  inline _Self operator--(int) {                       	// Postdecrement
-    _Self tmp = *this; --*this; return tmp;
-  }
-};
-
-template <class _NodeType, class _EdgeType, class _EdgeIter>
-class SGSuccIterator : public bidirectional_iterator<_NodeType, ptrdiff_t> {
-protected:
-  _EdgeIter oi;
-public:
-  typedef SGSuccIterator<_NodeType, _EdgeType, _EdgeIter> _Self;
-  
-  inline SGSuccIterator(_EdgeIter startEdge) : oi(startEdge) {}
-  
-  inline bool operator==(const _Self& x) const { return oi == x.oi; }
-  inline bool operator!=(const _Self& x) const { return !operator==(x); }
-  
-  inline _NodeType* operator*() const { return (_NodeType*)(*oi)->getSink(); }
-  inline _NodeType* operator->() const { return operator*(); }
-  
-  inline _EdgeType* getEdge() const { return *(oi); }
-  
-  inline _Self &operator++() { ++oi; return *this; }    // Preincrement
-  inline _Self operator++(int) {                      	// Postincrement
-    _Self tmp(*this); ++*this; return tmp; 
-  }
-  
-  inline _Self &operator--() { --oi; return *this; }    // Predecrement
-  inline _Self operator--(int) {                       	// Postdecrement
-    _Self tmp = *this; --*this; return tmp;
-  }
-};
 
 // 
 // sg_pred_iterator





More information about the llvm-commits mailing list