diff --git a/lldb/source/Symbol/Symtab.cpp b/lldb/source/Symbol/Symtab.cpp index 8a45cc05e4915..9a2b5cddd73b7 100644 --- a/lldb/source/Symbol/Symtab.cpp +++ b/lldb/source/Symbol/Symtab.cpp @@ -895,14 +895,8 @@ void Symtab::InitAddressIndexes() { for (size_t i = 0; i < num_entries; i++) { FileRangeToIndexMap::Entry *entry = m_file_addr_to_index.GetMutableEntryAtIndex(i); - if (entry->GetByteSize() > 0) - continue; - addr_t curr_base_addr = entry->GetRangeBase(); - // Symbols with non-zero size will show after zero-sized symbols on the - // same address. So do not set size of a non-last zero-sized symbol. - if (i == num_entries - 1 || - m_file_addr_to_index.GetMutableEntryAtIndex(i + 1) - ->GetRangeBase() != curr_base_addr) { + if (entry->GetByteSize() == 0) { + addr_t curr_base_addr = entry->GetRangeBase(); const RangeVector::Entry *containing_section = section_ranges.FindEntryThatContains(curr_base_addr); diff --git a/lldb/test/Shell/SymbolFile/Inputs/sizeless-symbol.s b/lldb/test/Shell/SymbolFile/Inputs/sizeless-symbol.s deleted file mode 100644 index ac08dddb0e2c1..0000000000000 --- a/lldb/test/Shell/SymbolFile/Inputs/sizeless-symbol.s +++ /dev/null @@ -1,8 +0,0 @@ - .text - .byte 0 -sizeless: -sizeful: - .byte 0 - .byte 0 -sizeend: - .size sizeful, sizeend - sizeful diff --git a/lldb/test/Shell/SymbolFile/sizeless-symbol.test b/lldb/test/Shell/SymbolFile/sizeless-symbol.test deleted file mode 100644 index 1459d6ada8def..0000000000000 --- a/lldb/test/Shell/SymbolFile/sizeless-symbol.test +++ /dev/null @@ -1,14 +0,0 @@ -# Some targets do not have the .size directive. -# RUN: %clang -target x86_64-unknown-unknown-elf %S/Inputs/sizeless-symbol.s -c -o %t.o -# RUN: %lldb %t.o -s %s -o quit | FileCheck %s - -image lookup --address 1 -# CHECK: Summary: sizeless-symbol.test.tmp.o`sizeful -image lookup --address 2 -# CHECK: Summary: sizeless-symbol.test.tmp.o`sizeful + 1 -image dump symtab -# CHECK: Index UserID DSX Type File Address/Value Load Address Size Flags Name -# CHECK-NEXT:------- ------ --- --------------- ------------------ ------------------ ------------------ ---------- ---------------------------------- -# CHECK-NEXT:[ 0] 1 Code 0x0000000000000003 0x0000000000000000 0x00000000 sizeend -# CHECK-NEXT:[ 1] 2 Code 0x0000000000000001 0x0000000000000002 0x00000000 sizeful -# CHECK-NEXT:[ 2] 3 Code 0x0000000000000001 0x0000000000000000 0x00000000 sizeless