Changes in directory llvm/lib/Target/X86:
X86ATTAsmPrinter.cpp updated: 1.81 -> 1.82 --- Log message: gcc often inserts it's own names for sections (e.g. gnu.linkonce.t.FunctionName). Convert them to "normal" LLVM names, otherwise linker won't be able to merge them. --- Diffs of the changes: (+7 -2) X86ATTAsmPrinter.cpp | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) Index: llvm/lib/Target/X86/X86ATTAsmPrinter.cpp diff -u llvm/lib/Target/X86/X86ATTAsmPrinter.cpp:1.81 llvm/lib/Target/X86/X86ATTAsmPrinter.cpp:1.82 --- llvm/lib/Target/X86/X86ATTAsmPrinter.cpp:1.81 Wed Jan 3 05:43:14 2007 +++ llvm/lib/Target/X86/X86ATTAsmPrinter.cpp Sat Jan 6 12:24:26 2007 @@ -80,8 +80,13 @@ X86SharedAsmPrinter::decorateName(CurrentFnName, F); - SwitchToTextSection(getSectionForFunction(*F).c_str(), F); - + // Change GNU linkonce to LLVM linkonce name + if (F->hasSection() && + (F->getSection().find(".gnu.linkonce.t") != std::string::npos)) + SwitchToTextSection(getSectionForFunction(*F).c_str(), NULL); + else + SwitchToTextSection(getSectionForFunction(*F).c_str(), F); + switch (F->getLinkage()) { default: assert(0 && "Unknown linkage type!"); case Function::InternalLinkage: // Symbols default to internal. _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits