The TargetData is not used for the isPowerOfTwo determination. It has never
[oota-llvm.git] / include / llvm / Analysis / Trace.h
index 35a36a453f6e8daae8ee271d4fe7115e54bbec4a..26947fe34f4d2325eb10f3afa0ae683132ecaa41 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by the LLVM research group and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
 #ifndef LLVM_ANALYSIS_TRACE_H
 #define LLVM_ANALYSIS_TRACE_H
 
-#include <iosfwd>
-#include <vector>
 #include <cassert>
+#include <vector>
 
-namespace llvm { 
+namespace llvm {
   class BasicBlock;
   class Function;
   class Module;
+  class raw_ostream;
 
 class Trace {
   typedef std::vector<BasicBlock *> BasicBlockListType;
@@ -101,14 +101,17 @@ public:
   unsigned                 size() const { return BasicBlocks.size(); }
   bool                    empty() const { return BasicBlocks.empty(); }
 
+  iterator erase(iterator q)               { return BasicBlocks.erase (q); }
+  iterator erase(iterator q1, iterator q2) { return BasicBlocks.erase (q1, q2); }
+
   /// print - Write trace to output stream.
   ///
-  void print (std::ostream &O) const;
+  void print(raw_ostream &O) const;
 
   /// dump - Debugger convenience method; writes trace to standard error
   /// output stream.
   ///
-  void dump () const;
+  void dump() const;
 };
 
 } // end namespace llvm