| # Test handling of object files that have duplicate sections. This is legal, | |
| # according to the System V ABI (Edition 4.1); see 4-20 where it says: | |
| # | |
| # Section names with a dot (.) prefix are reserved for the system, | |
| # although applications may use these sections if their existing | |
| # meanings are satisfactory. ... **An object file may have more than | |
| # one section with the same name.** | |
| # | |
| # (See https://github.com/llvm/llvm-project/issues/88001) | |
| # RUN: yaml2obj %s -o %t | |
| # RUN: lldb-test symbols %t | FileCheck %s | |
| # CHECK: 0x0000000000400010 {{.*}} my_function | |
| # CHECK: 0x0000000000401020 {{.*}} my_other_function | |
| !ELF | |
| FileHeader: | |
| Class: ELFCLASS64 | |
| Data: ELFDATA2LSB | |
| Type: ET_EXEC | |
| Machine: EM_X86_64 | |
| ProgramHeaders: | |
| - Type: PT_LOAD | |
| Flags: [ PF_X, PF_R ] | |
| FirstSec: .text | |
| LastSec: '.text (1)' | |
| VAddr: 0x400000 | |
| Align: 0x1000 | |
| Offset: 0x0 | |
| Sections: | |
| - Name: .text | |
| Type: SHT_PROGBITS | |
| Flags: [ SHF_ALLOC, SHF_EXECINSTR ] | |
| Address: 0x400010 | |
| AddressAlign: 0x10 | |
| - Name: '.text (1)' | |
| Type: SHT_PROGBITS | |
| Flags: [ SHF_ALLOC, SHF_EXECINSTR, SHF_GNU_RETAIN ] | |
| Address: 0x401000 | |
| AddressAlign: 0x10 | |
| Symbols: | |
| - Name: my_function | |
| Section: .text | |
| Value: 0x400010 | |
| - Name: my_other_function | |
| Section: '.text (1)' | |
| Value: 0x401020 |