[llvm-commits] [llvm] r151639 - /llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp

Roman Divacky rdivacky at freebsd.org
Tue Feb 28 10:15:26 PST 2012


Author: rdivacky
Date: Tue Feb 28 12:15:25 2012
New Revision: 151639

URL: http://llvm.org/viewvc/llvm-project?rev=151639&view=rev
Log:
Properly MCize the section switch, removing a FIXME.

Modified:
    llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp

Modified: llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp?rev=151639&r1=151638&r2=151639&view=diff
==============================================================================
--- llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp (original)
+++ llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp Tue Feb 28 12:15:25 2012
@@ -422,8 +422,10 @@
   bool isPPC64 = TD->getPointerSizeInBits() == 64;
 
   if (isPPC64 && !TOC.empty()) {
-    // FIXME 64-bit SVR4: Use MCSection here?
-    OutStreamer.EmitRawText(StringRef("\t.section\t\".toc\",\"aw\""));
+    const MCSectionELF *Section = OutStreamer.getContext().getELFSection(".toc",
+        ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC,
+        SectionKind::getReadOnly());
+    OutStreamer.SwitchSection(Section);
 
     // FIXME: This is nondeterminstic!
     for (DenseMap<MCSymbol*, MCSymbol*>::iterator I = TOC.begin(),





More information about the llvm-commits mailing list