[Lldb-commits] [lldb] e6c2c9a - [lldb] [test] Fix DW_TAG_GNU_call_site-DW_AT_low_pc.s relocation
Jan Kratochvil via lldb-commits
lldb-commits at lists.llvm.org
Sun Aug 2 13:42:24 PDT 2020
Author: Jan Kratochvil
Date: 2020-08-02T22:41:02+02:00
New Revision: e6c2c9a7d15171a57c98024511eaa8885f1bd5fd
URL: https://github.com/llvm/llvm-project/commit/e6c2c9a7d15171a57c98024511eaa8885f1bd5fd
DIFF: https://github.com/llvm/llvm-project/commit/e6c2c9a7d15171a57c98024511eaa8885f1bd5fd.diff
LOG: [lldb] [test] Fix DW_TAG_GNU_call_site-DW_AT_low_pc.s relocation
I have made the DW_FORM_ref4 relative. One could also use relocated
DW_FORM_ref_addr instead.
Tested with:
echo 'void f(){}'|clang -o 1.o -c -Wall -g -x c -;./bin/clang -o 1 1.o ../llvm-monorepo/lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s;./bin/lldb --no-lldbinit ./1 -o r -o 'p p' -o exit
Added:
Modified:
lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s
Removed:
################################################################################
diff --git a/lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s b/lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s
index 29cafebaa440..8cc1cc1ed2f9 100644
--- a/lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s
+++ b/lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s
@@ -79,7 +79,7 @@ main:
.uleb128 0x2 # (DIE (0x2d) DW_TAG_subprogram)
# DW_AT_external
.asciz "main" # DW_AT_name: "main"
- .long .Ltype_int # DW_AT_type
+ .long .Ltype_int - .Ldebug_info0 # DW_AT_type
.quad .LFB2 # DW_AT_low_pc
.quad .LFE2-.LFB2 # DW_AT_high_pc
.uleb128 0x1 # DW_AT_frame_base
@@ -87,7 +87,7 @@ main:
# DW_AT_GNU_all_call_sites
.uleb128 0x3 # (DIE (0x4f) DW_TAG_GNU_call_site)
.quad .LVL4 # DW_AT_low_pc
- .long .Lfunc_a # DW_AT_abstract_origin
+ .long .Lfunc_a - .Ldebug_info0 # DW_AT_abstract_origin
.uleb128 0x4 # (DIE (0x5c) DW_TAG_GNU_call_site_parameter)
.uleb128 0x1 # DW_AT_location
.byte 0x55 # DW_OP_reg5
@@ -111,7 +111,7 @@ main:
# DW_AT_GNU_all_call_sites
.uleb128 0x7 # (DIE (0x86) DW_TAG_formal_parameter)
.asciz "p" # DW_AT_name
- .long .Ltype_int # DW_AT_type
+ .long .Ltype_int - .Ldebug_info0 # DW_AT_type
.long .LLST0 # DW_AT_location
.byte 0 # end of children of DIE 0x6a
.byte 0 # end of children of DIE 0xb
More information about the lldb-commits
mailing list