[PATCH] JIT: Print debug location of inline asm and ignore DBG_VALUE instructions

Yaron Keren yaron.keren at gmail.com
Thu May 1 13:40:20 PDT 2014


Printing the instruction is not needed as you'd usually want just the debug location to workaround.

Using dump() does the patch trivial not using printDebugLoc().

TargetOpcode has DBG_VALUE but not DBG_DECLARE ? how to add this?

http://reviews.llvm.org/D3416

Files:
  lib/Target/X86/X86CodeEmitter.cpp

Index: lib/Target/X86/X86CodeEmitter.cpp
===================================================================
--- lib/Target/X86/X86CodeEmitter.cpp
+++ lib/Target/X86/X86CodeEmitter.cpp
@@ -1113,9 +1113,12 @@
     case TargetOpcode::INLINEASM:
       // We allow inline assembler nodes with empty bodies - they can
       // implicitly define registers, which is ok for JIT.
-      if (MI.getOperand(0).getSymbolName()[0])
+      if (MI.getOperand(0).getSymbolName()[0]) {
+        MI.dump();
         report_fatal_error("JIT does not support inline asm!");
+      }
       break;
+    case TargetOpcode::DBG_VALUE:
     case TargetOpcode::CFI_INSTRUCTION:
       break;
     case TargetOpcode::GC_LABEL:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3416.9021.patch
Type: text/x-patch
Size: 704 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140501/fa257db7/attachment.bin>


More information about the llvm-commits mailing list