Used llvm_ostream instead of std::ostream objects. This will reduce use
authorBill Wendling <isanbard@gmail.com>
Fri, 17 Nov 2006 09:52:49 +0000 (09:52 +0000)
committerBill Wendling <isanbard@gmail.com>
Fri, 17 Nov 2006 09:52:49 +0000 (09:52 +0000)
of the icky <iostream> class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31818 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Support/Casting.h
include/llvm/Support/Debug.h
include/llvm/Support/GraphWriter.h
include/llvm/Support/PassNameParser.h

index 6630fa955d37395ebc9fb8677674452137d06351..fff44f6e642f00de2b4a6c5712252a9debc01acf 100644 (file)
@@ -235,7 +235,7 @@ inline typename cast_retty<X, Y>::ret_type dyn_cast_or_null(Y Val) {
 
 
 #ifdef DEBUG_CAST_OPERATORS
-#include <iostream>
+#include "llvm/Support/Debug.h"
 
 struct bar {
   bar() {}
@@ -245,13 +245,13 @@ private:
 struct foo {
   void ext() const;
   /*  static bool classof(const bar *X) {
-    cerr << "Classof: " << X << "\n";
+    llvm_cerr << "Classof: " << X << "\n";
     return true;
     }*/
 };
 
 template <> inline bool isa_impl<foo,bar>(const bar &Val) {
-  cerr << "Classof: " << &Val << "\n";
+  llvm_cerr << "Classof: " << &Val << "\n";
   return true;
 }
 
index cedb50dcd29b5de8b0143e7fc66bdc789d5b00a5..9f0f1611d78db781ba7061df9816b9e7c4e441d3 100644 (file)
@@ -26,7 +26,7 @@
 #ifndef LLVM_SUPPORT_DEBUG_H
 #define LLVM_SUPPORT_DEBUG_H
 
-#include <ostream>              // Doesn't have static d'tors!!
+#include "llvm/Support/Streams.h"
 
 namespace llvm {
 
@@ -61,24 +61,6 @@ bool isCurrentDebugType(const char *Type);
   do { if (DebugFlag && isCurrentDebugType(DEBUG_TYPE)) { X; } } while (0)
 #endif
 
-/// llvm_ostream - Acts like an ostream. However, it doesn't print things out if
-/// an ostream isn't specified.
-/// 
-class llvm_ostream {
-  std::ostream* Stream;
-public:
-  llvm_ostream() : Stream(0) {}
-  llvm_ostream(std::ostream& OStream) : Stream(&OStream) {}
-
-  template <typename Ty>
-  llvm_ostream& operator << (const Ty& Thing) {
-#ifndef NDEBUG
-    if (Stream) *Stream << Thing;
-#endif
-    return *this;
-  }
-};
-
 /// getErrorOutputStream - Returns the error output stream (std::cerr). This
 /// places the std::c* I/O streams into one .cpp file and relieves the whole
 /// program from having to have hundreds of static c'tor/d'tors for them.
index b4e6d845e61f56876517e3bac5e605c5e15e0789..8602e74c149590e1f48001bf4edc42855b5f6176 100644 (file)
 #ifndef LLVM_SUPPORT_GRAPHWRITER_H
 #define LLVM_SUPPORT_GRAPHWRITER_H
 
+#include "llvm/Support/Debug.h"
 #include "llvm/Support/DOTGraphTraits.h"
 #include "llvm/ADT/GraphTraits.h"
 #include "llvm/System/Path.h"
-#include <vector>
-#include <iostream>
 #include <fstream>
+#include <vector>
 
 namespace llvm {
 
@@ -247,16 +247,16 @@ sys::Path WriteGraph(const GraphType &G,
   std::string ErrMsg;
   sys::Path Filename = sys::Path::GetTemporaryDirectory(&ErrMsg);
   if (Filename.isEmpty()) {
-    std::cerr << "Error: " << ErrMsg << "\n";
+    llvm_cerr << "Error: " << ErrMsg << "\n";
     return Filename;
   }
   Filename.appendComponent(Name + ".dot");
   if (Filename.makeUnique(true,&ErrMsg)) {
-    std::cerr << "Error: " << ErrMsg << "\n";
+    llvm_cerr << "Error: " << ErrMsg << "\n";
     return sys::Path();
   }
 
-  std::cerr << "Writing '" << Filename << "'... ";
+  llvm_cerr << "Writing '" << Filename << "'... ";
   
   std::ofstream O(Filename.c_str());
 
@@ -275,12 +275,12 @@ sys::Path WriteGraph(const GraphType &G,
 
     // Output the end of the graph
     W.writeFooter();
-    std::cerr << " done. \n";
+    llvm_cerr << " done. \n";
 
     O.close();
     
   } else {
-    std::cerr << "error opening file for writing!\n";
+    llvm_cerr << "error opening file for writing!\n";
     Filename.clear();
   }
   
index 5fa67d362cafa6ac1ba0447bd7d891d713a268ee..c3d4901700958b39d49df1f3085f356f465c1edb 100644 (file)
@@ -24,9 +24,9 @@
 #define LLVM_SUPPORT_PASS_NAME_PARSER_H
 
 #include "llvm/Support/CommandLine.h"
+#include "llvm/Support/Debug.h"
 #include "llvm/Pass.h"
 #include <algorithm>
-#include <iostream>
 
 namespace llvm {
 
@@ -66,7 +66,7 @@ public:
   virtual void passRegistered(const PassInfo *P) {
     if (ignorablePass(P) || !Opt) return;
     if (findOption(P->getPassArgument()) != getNumOptions()) {
-      std::cerr << "Two passes with the same argument (-"
+      llvm_cerr << "Two passes with the same argument (-"
                 << P->getPassArgument() << ") attempted to be registered!\n";
       abort();
     }