## Test llvm-nm for XCOFF object files.
# RUN: yaml2obj %s -o %t.o
# RUN: llvm-nm %t.o | FileCheck --match-full-lines %s
--- !XCOFF
FileHeader:
MagicNumber: 0x1DF
Sections:
- Name: .text
Address: 0x0
Flags: [ STYP_TEXT ]
- Name: .data
Flags: [ STYP_DATA ]
- Name: .bss
Flags: [ STYP_BSS ]
- Name: .debug
Flags: [ STYP_DEBUG ]
- Name: .except
Flags: [ STYP_EXCEPT ]
Symbols:
- Name: .file
Section: N_DEBUG
StorageClass: C_FILE
- Name: .text
Value: 0x10
Section: .text
StorageClass: C_STAT
NumberOfAuxEntries: 1
- Name: .data
Value: 0x80
Section: .data
StorageClass: C_STAT
NumberOfAuxEntries: 1
- Name: .bss
Value: 0x310
Section: .bss
StorageClass: C_STAT
- Name: .debug
Section: .debug
StorageClass: C_STAT
- Name: ._ZL5func0v
Section: .text
StorageClass: C_EXT
Type: 0x20
AuxEntries:
- Type: AUX_CSECT
SymbolAlignmentAndType: 0x02
StorageMappingClass: XMC_PR
- Name: ._Z3fwpv
Section: .text
StorageClass: C_WEAKEXT
Type: 0x20
AuxEntries:
- Type: AUX_CSECT
SymbolAlignmentAndType: 0x02
StorageMappingClass: XMC_PR
- Name: val
Section: .data
StorageClass: C_EXT
Type: 0x20
AuxEntries:
- Type: AUX_CSECT
SymbolAlignmentAndType: 0x01
StorageMappingClass: XMC_RW
SectionOrLength: 0x4
- Name: extval
Section: N_UNDEF
StorageClass: C_EXT
Type: 0x00
AuxEntries:
- Type: AUX_CSECT
SymbolAlignmentAndType: 0x01
StorageMappingClass: XMC_UA
SectionOrLength: 0x0
- Name: comval
Section: .bss
Value: 0x13C
StorageClass: C_EXT
Type: 0x00
AuxEntries:
- Type: AUX_CSECT
SymbolAlignmentAndType: 0x03
StorageMappingClass: XMC_RW
SectionOrLength: 0x0
- Name: abs
Section: N_ABS
- Name: symIn_N_debug
Section: N_DEBUG
- Name: .except
Section: .except
## Global weak symbol.
# CHECK: 00000000 W ._Z3fwpv
## Global symbol in .text section.
# CHECK-NEXT: 00000000 T ._ZL5func0v
## Symbol in .bss section.
# CHECK-NEXT: 00000310 b .bss
## Local symbol in .data section.
# CHECK-NEXT: 00000080 d .data
## Symbol in .debug section.
# CHECK-NEXT: 00000000 N .debug
## Symbol in .except section.
# CHECK-NEXT: 00000000 ? .except
## Symbol .file.
# CHECK-NEXT: 00000000 f .file
## Local symbol in .text section.
# CHECK-NEXT: 00000010 t .text
## Absolute symbol.
# CHECK-NEXT: 00000000 a abs
## Common symbol.
# CHECK-NEXT: 0000013c C comval
## Undefined symbol.
# CHECK-NEXT: U extval
## Symbol in N_DEBUG section.
# CHECK-NEXT: 00000000 ? symIn_N_debug
## Global symbol in .data section.
# CHECK-NEXT: 00000000 D val