[llvm] r217899 - Add back a fallback case for targets that do not or cannot implement getNoopForMachoTarget().

Owen Anderson resistor at mac.com
Tue Sep 16 13:28:00 PDT 2014


Author: resistor
Date: Tue Sep 16 15:28:00 2014
New Revision: 217899

URL: http://llvm.org/viewvc/llvm-project?rev=217899&view=rev
Log:
Add back a fallback case for targets that do not or cannot implement getNoopForMachoTarget().

Modified:
    llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp

Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp?rev=217899&r1=217898&r2=217899&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Tue Sep 16 15:28:00 2014
@@ -802,7 +802,11 @@ void AsmPrinter::EmitFunctionBody() {
     MCInst Noop;
     TM.getSubtargetImpl()->getInstrInfo()->getNoopForMachoTarget(Noop);
     OutStreamer.AddComment("avoids zero-length function");
-    OutStreamer.EmitInstruction(Noop, getSubtargetInfo());
+
+    // Targets can opt-out of emitting the noop here by leaving the opcode
+    // unspecified.
+    if (Noop.getOpcode())
+      OutStreamer.EmitInstruction(Noop, getSubtargetInfo());
   }
 
   const Function *F = MF->getFunction();





More information about the llvm-commits mailing list