Added LLVM copyright header (for lack of a better term).
[oota-llvm.git] / include / llvm / Assembly / Writer.h
index 07671a18a50f15f9096762517aca9a3bdc410247..5798ae8ac78628610ec9164141f22056e4feacd7 100644 (file)
@@ -1,4 +1,11 @@
-//===-- llvm/Assembly/Writer.h - Printer for VM assembly files ---*- C++ -*--=//
+//===-- llvm/Assembly/Writer.h - Printer for VM assembly files --*- C++ -*-===//
+// 
+//                     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 functionality is implemented by the lib/Assembly/Writer library.
 // This library is used to print VM assembly language files to an iostream. It
@@ -20,8 +27,6 @@
 class Type;
 class Module;
 class Value;
-class SlotCalculator;
-
 
 // WriteTypeSymbolic - This attempts to write the specified type as a symbolic
 // type, iff there is an entry in the modules symbol table for the specified
@@ -29,12 +34,13 @@ class SlotCalculator;
 //
 std::ostream &WriteTypeSymbolic(std::ostream &, const Type *, const Module *M);
 
-
 // WriteAsOperand - Write the name of the specified value out to the specified
 // ostream.  This can be useful when you just want to print int %reg126, not the
-// whole instruction that generated it.
+// whole instruction that generated it.  If you specify a Module for context,
+// then even constants get pretty printed (for example the type of a null 
+// pointer is printed symbolically).
 //
 std::ostream &WriteAsOperand(std::ostream &, const Value *, bool PrintTy = true,
-                             bool PrintName = true, SlotCalculator *Table = 0);
+                             bool PrintName = true, const Module *Context = 0);
 
 #endif