diff options
Diffstat (limited to 'lldb/lit/ObjectFile/ELF/PT_TLS-overlap-PT_LOAD.yaml')
-rw-r--r-- | lldb/lit/ObjectFile/ELF/PT_TLS-overlap-PT_LOAD.yaml | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/lldb/lit/ObjectFile/ELF/PT_TLS-overlap-PT_LOAD.yaml b/lldb/lit/ObjectFile/ELF/PT_TLS-overlap-PT_LOAD.yaml new file mode 100644 index 00000000000..cd3939e0541 --- /dev/null +++ b/lldb/lit/ObjectFile/ELF/PT_TLS-overlap-PT_LOAD.yaml @@ -0,0 +1,63 @@ +# Overlapping PT_LOAD and PT_TLS segments should be able to exist side by side. + +# RUN: yaml2obj %s > %t +# RUN: lldb-test object-file %t | FileCheck %s +# RUN: lldb %t -o "image lookup -a 0x1000" -b | FileCheck --check-prefix=LOOKUP %s + +# CHECK: Index: 0 +# CHECK-NEXT: ID: 0xffffffffffffffff +# CHECK-NEXT: Name: PT_LOAD[0] +# CHECK-NEXT: Type: container +# CHECK-NEXT: Permissions: rw- +# CHECK-NEXT: Thread specific: no +# CHECK-NEXT: VM address: 0x1000 +# CHECK-NEXT: VM size: 16 +# CHECK-NEXT: File size: 16 +# CHECK-NEXT: Showing 1 subsections + +# CHECK: Index: 1 +# CHECK-NEXT: ID: 0xfffffffffffffffe +# CHECK-NEXT: Name: PT_TLS[0] +# CHECK-NEXT: Type: container +# CHECK-NEXT: Permissions: rw- +# CHECK-NEXT: Thread specific: yes +# CHECK-NEXT: VM address: 0x1000 +# CHECK-NEXT: VM size: 16 +# CHECK-NEXT: File size: 0 +# CHECK-NEXT: Showing 1 subsections + +# LOOKUP-LABEL: image lookup -a 0x1000 +# LOOKUP: Address: {{.*}}.PT_LOAD[0]..data + 0) + +!ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + Type: ET_EXEC + Machine: EM_ARM +Sections: + - Name: .data + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC, SHF_WRITE ] + Address: 0x1000 + AddressAlign: 0x4 + Size: 0x10 + - Name: .tbss + Type: SHT_NOBITS + Flags: [ SHF_ALLOC, SHF_WRITE, SHF_TLS ] + Address: 0x1000 + AddressAlign: 0x4 + Size: 0x10 +ProgramHeaders: + - Type: PT_LOAD + Flags: [ PF_W, PF_R ] + VAddr: 0x1000 + Align: 0x4 + Sections: + - Section: .data + - Type: PT_TLS + Flags: [ PF_R, PF_W ] + VAddr: 0x1000 + Align: 0x4 + Sections: + - Section: .tbss |