When calling print directly on a global (eg from the debugger) it
authorDuncan Sands <baldrick@free.fr>
Wed, 12 Sep 2012 09:55:51 +0000 (09:55 +0000)
committerDuncan Sands <baldrick@free.fr>
Wed, 12 Sep 2012 09:55:51 +0000 (09:55 +0000)
was printing a newline that doesn't occur when printing other kinds
of LLVM values.  Move the printing of that newline elsewhere, making
globals print the same as other values while leaving the output when
printing an entire module unchanged.  Patch by Saša Tomić.

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

lib/VMCore/AsmWriter.cpp

index f3f24ae5c8bb430830a45d3e00d785a37ba81af9..f2945ac88ff98203392665ce879cff7fcae1ab94 100644 (file)
@@ -1288,8 +1288,9 @@ void AssemblyWriter::printModule(const Module *M) {
   // Output all globals.
   if (!M->global_empty()) Out << '\n';
   for (Module::const_global_iterator I = M->global_begin(), E = M->global_end();
-       I != E; ++I)
-    printGlobal(I);
+       I != E; ++I) {
+    printGlobal(I); Out << '\n';
+  }
 
   // Output all aliases.
   if (!M->alias_empty()) Out << "\n";
@@ -1439,7 +1440,6 @@ void AssemblyWriter::printGlobal(const GlobalVariable *GV) {
     Out << ", align " << GV->getAlignment();
 
   printInfoComment(*GV);
-  Out << '\n';
 }
 
 void AssemblyWriter::printAlias(const GlobalAlias *GA) {