llvm-for-llvmta/test/tools/obj2yaml/ELF/special-symbol-indices.yaml

50 lines
1.3 KiB
YAML

# RUN: yaml2obj %s -o %t
# RUN: obj2yaml %t | FileCheck %s
## Test checks that we are able to handle symbols with special/reserved indices.
# CHECK: Symbols:
# CHECK-NEXT: - Name: absolute
# CHECK-NEXT: Index: SHN_ABS
# CHECK-NEXT: Binding: STB_GLOBAL
# CHECK-NEXT: Value: 0x1234
# CHECK-NEXT: - Name: common
# CHECK-NEXT: Index: SHN_COMMON
# CHECK-NEXT: Binding: STB_GLOBAL
# CHECK-NEXT: - Name: valid_index
# CHECK-NEXT: Section: .text
# CHECK-NEXT: Binding: STB_GLOBAL
# CHECK-NEXT: - Name: processor_specific_index
# CHECK-NEXT: Index: SHN_HEXAGON_SCOMMON_1
# CHECK-NEXT: Binding: STB_GLOBAL
# CHECK-NEXT: - Name: unknown_index
# CHECK-NEXT: Index: 0xFFFE
# CHECK-NEXT: Binding: STB_GLOBAL
!ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_EXEC
Machine: EM_HEXAGON
Sections:
- Name: .text
Type: SHT_PROGBITS
Symbols:
- Name: absolute
Index: SHN_ABS
Value: 0x1234
Binding: STB_GLOBAL
- Name: common
Index: SHN_COMMON
Binding: STB_GLOBAL
- Name: valid_index
Index: 0x1
Binding: STB_GLOBAL
- Name: processor_specific_index
Index: SHN_HEXAGON_SCOMMON_1
Binding: STB_GLOBAL
- Name: unknown_index
Index: 0xfffe
Binding: STB_GLOBAL