* Add capability of printing out a global variable
authorChris Lattner <sabre@nondot.org>
Mon, 10 Sep 2001 20:06:47 +0000 (20:06 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 10 Sep 2001 20:06:47 +0000 (20:06 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@534 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Assembly/Writer.h

index f883312966a31b2542d430247b64defaf7bea64b..6c7f8e73a8cc11d22773a701c3b537069cf9c79d 100644 (file)
@@ -20,6 +20,7 @@
 #include "llvm/Type.h"
 
 class Module;
+class GlobalVariable;
 class Method;
 class BasicBlock;
 class Instruction;
@@ -30,6 +31,7 @@ class SlotCalculator;
 // understand later... (the parser only understands whole classes though)
 //
 void WriteToAssembly(const Module  *Module, ostream &o);
+void WriteToAssembly(const GlobalVariable *G, ostream &o);
 void WriteToAssembly(const Method  *Method, ostream &o);
 void WriteToAssembly(const BasicBlock  *BB, ostream &o);
 void WriteToAssembly(const Instruction *In, ostream &o);
@@ -61,6 +63,10 @@ inline ostream &operator<<(ostream &o, const Module *C) {
   WriteToAssembly(C, o); return o;
 }
 
+inline ostream &operator<<(ostream &o, const GlobalVariable *G) {
+  WriteToAssembly(G, o); return o;
+}
+
 inline ostream &operator<<(ostream &o, const Method *M) {
   WriteToAssembly(M, o); return o;
 }
@@ -91,6 +97,7 @@ inline ostream &operator<<(ostream &o, const Value *I) {
   case Value::InstructionVal: WriteToAssembly((const Instruction *)I, o); break;
   case Value::BasicBlockVal:  WriteToAssembly((const BasicBlock  *)I, o); break;
   case Value::MethodVal:      WriteToAssembly((const Method      *)I, o); break;
+  case Value::GlobalVal:      WriteToAssembly((const GlobalVariable*)I,o);break;
   case Value::ModuleVal:      WriteToAssembly((const Module      *)I, o); break;
   default: return o << "<unknown value type: " << I->getValueType() << ">";
   }