Skip to content

Commit b69957f

Browse files
authored
[lldb] Change synthetic symbol names to have file address (#137512)
Changes the default synthetic symbol names to contain their file address
1 parent cd6a614 commit b69957f

File tree

4 files changed

+7
-5
lines changed

4 files changed

+7
-5
lines changed

lldb/source/Symbol/Symbol.cpp

+3-1
Original file line numberDiff line numberDiff line change
@@ -639,7 +639,9 @@ void Symbol::SynthesizeNameIfNeeded() const {
639639
// breakpoints on them.
640640
llvm::SmallString<256> name;
641641
llvm::raw_svector_ostream os(name);
642-
os << GetSyntheticSymbolPrefix() << GetID();
642+
os << GetSyntheticSymbolPrefix() << "_"
643+
<< llvm::format_hex_no_prefix(
644+
m_addr_range.GetBaseAddress().GetFileAddress(), 0);
643645
m_mangled.SetDemangledName(ConstString(os.str()));
644646
}
645647
}

lldb/test/Shell/ObjectFile/ELF/eh_frame-symbols.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
# CHECK: Index UserID DSX Type File Address/Value Load Address Size Flags Name
55
# CHECK: [ 0] 1 SourceFile 0x0000000000000000 0x0000000000000000 0x00000004 -
6-
# CHECK: [ 1] 2 SX Code 0x0000000000201180 0x0000000000000010 0x00000000 ___lldb_unnamed_symbol{{[0-9]*}}
7-
# CHECK: [ 2] 3 SX Code 0x0000000000201190 0x0000000000000006 0x00000000 ___lldb_unnamed_symbol{{[0-9]*}}
6+
# CHECK: [ 1] 2 SX Code 0x0000000000201180 0x0000000000000010 0x00000000 ___lldb_unnamed_symbol_{{[0-9a-f]*}}
7+
# CHECK: [ 2] 3 SX Code 0x0000000000201190 0x0000000000000006 0x00000000 ___lldb_unnamed_symbol_{{[0-9a-f]*}}
88

99
--- !ELF
1010
FileHeader:

lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# RUN: -s %s | FileCheck %s
44

55
# CHECK: num_symbols = 4 (sorted by size):
6-
# CHECK: [ 0] 0 SX Code 0x0000000000400000 0x00000000000000b0 0x00000000 ___lldb_unnamed_symbol0
6+
# CHECK: [ 0] 0 SX Code 0x0000000000400000 0x00000000000000b0 0x00000000 ___lldb_unnamed_symbol_400000
77
# CHECK: [ 1] 0 X Code 0x00000000004000d0 0x0000000000000022 0x00000000 _start
88
# CHECK: [ 2] 0 X Code 0x00000000004000b0 0x0000000000000010 0x00000000 f1
99
# CHECK: [ 3] 0 X Code 0x00000000004000c0 0x0000000000000010 0x00000000 f2

lldb/test/Shell/SymbolFile/Breakpad/symtab.test

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# CHECK-LABEL: (lldb) image dump symtab symtab.out
66
# CHECK: Symtab, file = {{.*}}symtab.out, num_symbols = 4:
77
# CHECK: Index UserID DSX Type File Address/Value Load Address Size Flags Name
8-
# CHECK: [ 0] 0 SX Code 0x0000000000400000 0x00000000000000b0 0x00000000 ___lldb_unnamed_symbol{{[0-9]*}}
8+
# CHECK: [ 0] 0 SX Code 0x0000000000400000 0x00000000000000b0 0x00000000 ___lldb_unnamed_symbol_{{[0-9a-f]*}}
99
# CHECK: [ 1] 0 X Code 0x00000000004000b0 0x0000000000000010 0x00000000 f1
1010
# CHECK: [ 2] 0 X Code 0x00000000004000c0 0x0000000000000010 0x00000000 f2
1111
# CHECK: [ 3] 0 X Code 0x00000000004000d0 0x0000000000000022 0x00000000 _start

0 commit comments

Comments
 (0)