More templatization.
[oota-llvm.git] / lib / Target / IA64 / IA64AsmPrinter.cpp
index d7c822680b254e13a6a8e925549706e07c0fd8cd..cbc86ea365697fd89277769c39da1a07eeea04e6 100644 (file)
@@ -179,8 +179,8 @@ void IA64AsmPrinter::printOp(const MachineOperand &MO,
     return;
   case MachineOperand::MO_ConstantPoolIndex: {
     O << "@gprel(" << TAI->getPrivateGlobalPrefix()
-      << "CPI" << MO.getConstantPoolIndex() << '_'
-      << CurrentFnName << ")";
+      << "CPI" << getFunctionNumber() << "_"
+      << MO.getConstantPoolIndex() << ")";
     return;
   }
 
@@ -271,7 +271,7 @@ bool IA64AsmPrinter::doFinalization(Module &M) {
       O << "\n\n";
       std::string name = Mang->getValueName(I);
       Constant *C = I->getInitializer();
-      unsigned Size = TD->getTypeSize(C->getType());
+      unsigned Size = TD->getABITypeSize(C->getType());
       unsigned Align = TD->getPreferredTypeAlignmentShift(C->getType());
       
       if (C->isNullValue() &&
@@ -279,11 +279,11 @@ bool IA64AsmPrinter::doFinalization(Module &M) {
            I->hasWeakLinkage() /* FIXME: Verify correct */)) {
         SwitchToDataSection(".data", I);
         if (I->hasInternalLinkage()) {
-          O << "\t.lcomm " << name << "#," << TD->getTypeSize(C->getType())
+          O << "\t.lcomm " << name << "#," << TD->getABITypeSize(C->getType())
           << "," << (1 << Align);
           O << "\n";
         } else {
-          O << "\t.common " << name << "#," << TD->getTypeSize(C->getType())
+          O << "\t.common " << name << "#," << TD->getABITypeSize(C->getType())
           << "," << (1 << Align);
           O << "\n";
         }