[PATCH] IAS: Use the root macro instanciation for location

Frederic Riss friss at apple.com
Thu Jun 25 14:57:42 PDT 2015


REPOSITORY
  rL LLVM

http://reviews.llvm.org/D10463

Files:
  llvm/trunk/lib/MC/MCParser/AsmParser.cpp
  llvm/trunk/test/DebugInfo/X86/asm-macro-line-number.s

Index: llvm/trunk/lib/MC/MCParser/AsmParser.cpp
===================================================================
--- llvm/trunk/lib/MC/MCParser/AsmParser.cpp
+++ llvm/trunk/lib/MC/MCParser/AsmParser.cpp
@@ -1646,8 +1646,8 @@
     if (ActiveMacros.empty())
       Line = SrcMgr.FindLineNumber(IDLoc, CurBuffer);
     else
-      Line = SrcMgr.FindLineNumber(ActiveMacros.back()->InstantiationLoc,
-                                   ActiveMacros.back()->ExitBuffer);
+      Line = SrcMgr.FindLineNumber(ActiveMacros.front()->InstantiationLoc,
+                                   ActiveMacros.front()->ExitBuffer);
 
     // If we previously parsed a cpp hash file line comment then make sure the
     // current Dwarf File is for the CppHashFilename if not then emit the
Index: llvm/trunk/test/DebugInfo/X86/asm-macro-line-number.s
===================================================================
--- llvm/trunk/test/DebugInfo/X86/asm-macro-line-number.s
+++ llvm/trunk/test/DebugInfo/X86/asm-macro-line-number.s
@@ -3,12 +3,18 @@
 # 1 "reduced.S"
 # 1 "<built-in>" 1
 # 1 "reduced.S" 2
+# 200 "macros.h"
 
  .macro return arg
   movl %eax, \arg
   retl
  .endm
 
+ .macro return2 arg
+  return \arg
+ .endm
+
+# 7 "reduced.S"
 function:
  return 0
 
@@ -18,3 +24,11 @@
 # CHECK: .loc 2 8 0
 # CHECK: retl
 
+# 42 "reduced.S"
+function2:
+ return2 0
+
+# CHECK: .loc 2 43 0
+# CHECK: movl %eax, 0
+# CHECK: .loc 2 43 0
+# CHECK: retl

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D10463.28504.patch
Type: text/x-patch
Size: 1439 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150625/dec83d03/attachment.bin>


More information about the llvm-commits mailing list