From 16b7f5101b9191dcb36c0e545084ff52a41bc78e Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Fri, 8 Aug 2008 18:25:52 +0000 Subject: [PATCH] Generalize git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54542 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86ATTAsmPrinter.cpp | 6 ++---- lib/Target/X86/X86TargetAsmInfo.cpp | 6 ++++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/Target/X86/X86ATTAsmPrinter.cpp b/lib/Target/X86/X86ATTAsmPrinter.cpp index bb519560a18..8a6b60425ec 100644 --- a/lib/Target/X86/X86ATTAsmPrinter.cpp +++ b/lib/Target/X86/X86ATTAsmPrinter.cpp @@ -806,10 +806,8 @@ void X86ATTAsmPrinter::printModuleLevelGV(const GlobalVariable* GVar) { return; } else { O << TAI->getCOMMDirective() << name << ',' << Size; - - // Leopard and above support aligned common symbols. - if (Subtarget->getDarwinVers() >= 9) - O << ',' << Align; + if (TAI->getCOMMDirectiveTakesAlignment()) + O << ',' << (TAI->getAlignmentIsInBytes() ? (1 << Align) : Align); } } else { if (!Subtarget->isTargetCygMing()) { diff --git a/lib/Target/X86/X86TargetAsmInfo.cpp b/lib/Target/X86/X86TargetAsmInfo.cpp index f7443c31f77..984c6b225c5 100644 --- a/lib/Target/X86/X86TargetAsmInfo.cpp +++ b/lib/Target/X86/X86TargetAsmInfo.cpp @@ -126,7 +126,8 @@ bool X86TargetAsmInfo::ExpandInlineAsm(CallInst *CI) const { X86DarwinTargetAsmInfo::X86DarwinTargetAsmInfo(const X86TargetMachine &TM): X86TargetAsmInfo(TM), DarwinTargetAsmInfo(TM) { - bool is64Bit = DTM->getSubtarget().is64Bit(); + const X86Subtarget* Subtarget = &DTM->getSubtarget(); + bool is64Bit = Subtarget->is64Bit(); AlignmentIsInBytes = false; TextAlignFillValue = 0x90; @@ -156,7 +157,8 @@ X86DarwinTargetAsmInfo::X86DarwinTargetAsmInfo(const X86TargetMachine &TM): LCOMMDirective = "\t.lcomm\t"; SwitchToSectionDirective = "\t.section "; StringConstantPrefix = "\1LC"; - COMMDirectiveTakesAlignment = false; + // Leopard and above support aligned common symbols. + COMMDirectiveTakesAlignment = (Subtarget->getDarwinVers() >= 9); HasDotTypeDotSizeDirective = false; if (TM.getRelocationModel() == Reloc::Static) { StaticCtorsSection = ".constructor";