Bug fix: need to use .reserve for uninitialized data.
authorVikram S. Adve <vadve@cs.uiuc.edu>
Thu, 8 Nov 2001 14:29:57 +0000 (14:29 +0000)
committerVikram S. Adve <vadve@cs.uiuc.edu>
Thu, 8 Nov 2001 14:29:57 +0000 (14:29 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1205 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9AsmPrinter.cpp

index 6c7ebaa99c4183cff16695a2c19a85b9c1646fe8..3d35ecc91a84cb0f5be5866d0f57efc4eb32da29 100644 (file)
@@ -438,7 +438,7 @@ SparcAsmPrinter::printConstant(const ConstPoolVal* CV, string valID)
       if (! CPP->isNullValue())
         assert(0 && "Cannot yet print non-null pointer constants to assembly");
       else
-        toAsm << (void*) NULL;
+        toAsm << (void*) NULL << endl;
     }
   else if (ConstPoolPointerRef* CPRef = dyn_cast<ConstPoolPointerRef>(CV))
     {
@@ -464,11 +464,10 @@ SparcAsmPrinter::printGlobalVariable(const GlobalVariable* GV)
   if (GV->hasInitializer())
     printConstant(GV->getInitializer(), getID(GV));
   else {
-    toAsm << "\t.align" << TypeToAlignment(GV->getType()->getValueType(), Target)
-          << getID(GV) << ":" << endl;
-    
-    toAsm << "\t.type" << "\t" << getID(GV) << ",#object" << endl;
-    toAsm << "\t.size" << "\t" << getID(GV) << ","
+    toAsm << "\t.align\t"
+          << TypeToAlignment(GV->getType()->getValueType(), Target) << endl;
+    toAsm << "\t.type\t" << getID(GV) << ",#object" << endl;
+    toAsm << "\t.reserve\t" << getID(GV) << ","
           << TypeToSize(GV->getType()->getValueType(), Target)
           << endl;
   }