Revert "[LLDB][ELF] Fixup for comments in D67390"

This reverts commit 813f05915d.

llvm-svn: 371624
This commit is contained in:
Konrad Kleine 2019-09-11 14:33:21 +00:00
parent 3ad8278737
commit d44c4a71df
3 changed files with 8 additions and 7 deletions

View File

@ -11,7 +11,7 @@
# 2: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
# 3: 0000000000401110 13 FUNC GLOBAL DEFAULT 10 functionInDynsym
# We want to keep the symbol "functionInDynsym" in the .dynsym section and not
# We want to keep the symbol "functionInDynsym" in the .dynamic section and not
# have it put the default .symtab section.
# RUN: echo "{functionInDynsym;};" > %T/dynmic-symbols.txt
# RUN: %clang -Wl,--dynamic-list=%T/dynmic-symbols.txt -g -o %t.binary %p/Inputs/load-from-dynsym-alone.c

View File

@ -16,7 +16,7 @@
# 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
# 1: 0000000000401110 15 FUNC GLOBAL DEFAULT 10 functionInSymtab
# We want to keep the symbol "functionInDynsym" in the .dynsym section and not
# We want to keep the symbol "functionInDynsym" in the .dynamic section and not
# have it put the default .symtab section.
# RUN: echo "{functionInDynsym;};" > %T/dynmic-symbols.txt
# RUN: %clang -Wl,--dynamic-list=%T/dynmic-symbols.txt -g -o %t.binary %p/Inputs/load-symtab-and-dynsym.c

View File

@ -2644,11 +2644,12 @@ Symtab *ObjectFileELF::GetSymtab() {
// Sharable objects and dynamic executables usually have 2 distinct symbol
// tables, one named ".symtab", and the other ".dynsym". The dynsym is a
// smaller version of the symtab that only contains global symbols.
// Information in the dynsym section is *usually* also found in the symtab,
// but this is not required as symtab entries can be removed after linking.
// The minidebuginfo format makes use of this facility to create smaller
// symbol tables.
// smaller version of the symtab that only contains global symbols. The
// information found in the dynsym is therefore also found in the symtab,
// while the reverse is not necessarily true.
// One exception to the above rule is when we have minidebuginfo embedded
// into a compressed .gnu_debugdata section. This section contains a .symtab
// from which all symbols already contained in the .dynsym are stripped.
Section *symtab =
section_list->FindSectionByType(eSectionTypeELFSymbolTable, true).get();
if (symtab) {