diff --git a/lib/Target/X86/X86ATTAsmPrinter.cpp b/lib/Target/X86/X86ATTAsmPrinter.cpp index 0236e492888..61556baea1b 100644 --- a/lib/Target/X86/X86ATTAsmPrinter.cpp +++ b/lib/Target/X86/X86ATTAsmPrinter.cpp @@ -154,10 +154,11 @@ std::string X86ATTAsmPrinter::getSectionForFunction(const Function &F) const { void X86ATTAsmPrinter::emitFunctionHeader(const MachineFunction &MF) { const Function *F = MF.getFunction(); + std::string SectionName = TAI->SectionForGlobal(F); decorateName(CurrentFnName, F); - SwitchToTextSection(TAI->SectionForGlobal(F).c_str(), F); + SwitchToTextSection(SectionName.c_str()); unsigned FnAlign = OptimizeForSize ? 1 : 4; switch (F->getLinkage()) { diff --git a/lib/Target/X86/X86TargetAsmInfo.cpp b/lib/Target/X86/X86TargetAsmInfo.cpp index dd1bdb884ad..43d60cbd8f4 100644 --- a/lib/Target/X86/X86TargetAsmInfo.cpp +++ b/lib/Target/X86/X86TargetAsmInfo.cpp @@ -433,7 +433,7 @@ X86ELFTargetAsmInfo::SelectSectionForGlobal(const GlobalValue *GV) const { return UniqueSectionForGlobal(F, kind); } } else if (const GlobalVariable *GVar = dyn_cast(GV)) { - if (GVar->isWeakForLinker() + if (GVar->isWeakForLinker()) return UniqueSectionForGlobal(GVar, kind); else { switch (kind) {