125 lines
11 KiB
Plaintext
125 lines
11 KiB
Plaintext
## Test the --loader-section-symbols option.
|
|
|
|
# RUN: yaml2obj --docnum=1 -DSYMNUM=2 %s -o %t_xcoff32.o
|
|
# RUN: yaml2obj --docnum=1 -DSYMNUM=4 %s -o %t_xcoff32_invalid.o
|
|
# RUN: yaml2obj --docnum=2 %s -o %t_xcoff64.o
|
|
|
|
# RUN: llvm-readobj --loader-section-symbols %t_xcoff32.o |\
|
|
# RUN: FileCheck %s --check-prefixes=CHECK32
|
|
# RUN: llvm-readobj --loader-section-symbols %t_xcoff32_invalid.o 2>&1 |\
|
|
# RUN: FileCheck -DFILE=%t_xcoff32_invalid.o %s --check-prefixes=CHECK32,WARN
|
|
# RUN: llvm-readobj --loader-section-symbols %t_xcoff64.o |\
|
|
# RUN: FileCheck %s --check-prefixes=CHECK64
|
|
|
|
--- !XCOFF
|
|
FileHeader:
|
|
MagicNumber: 0x1DF
|
|
Sections:
|
|
- Name: .loader
|
|
Flags: [ STYP_LOADER ]
|
|
SectionData: "000000010000000[[SYMNUM]]000000050000016D00000001000000A40000000c000000506d79696e74766172200002800002110500000000000000000000000000000002200002840002110a0000000000000000000a66756e63305f5f467600"
|
|
## ^------- -Version=1
|
|
## ^---------------- -NumberOfSymbolEntries=SYMNUM
|
|
## ^------- -NumberOfRelocationEntries=5
|
|
## ^------- -LengthOfImportFileIDStringTable=365
|
|
## ^------- -NumberOfImportFileIDs=1
|
|
## ^------- -OffsetToImportFileIDs=0xA4
|
|
## ^------- -LengthOfStringTable=12
|
|
## ^------- -OffsetToStringTable=0x050
|
|
## ^--------------- SymbolName=myintvar
|
|
## ^------- Value=0x20000280
|
|
## ^--- sectionNumber = 2
|
|
## ^- SymbolType=0x11
|
|
## ^- StorageClass=0x05
|
|
## ^------- ImportFileID=0
|
|
## ^-------ParameterCheckType=0
|
|
## ^-------SymbolZero=0
|
|
## ^-------OffsetToSymTbl=2
|
|
## ^------- Value=20000284
|
|
## ^--- sectionNumber = 2
|
|
## ^- SymbolType=0x11
|
|
## ^- StorageClass=0x0a
|
|
## ^------- ImportFileID=0
|
|
## ^-------ParameterCheckType=0
|
|
## ^StringTable
|
|
|
|
--- !XCOFF
|
|
FileHeader:
|
|
MagicNumber: 0x1F7
|
|
Sections:
|
|
- Name: .loader
|
|
Flags: [ STYP_LOADER ]
|
|
SectionData: "0000000200000002000000050000016D000000010000001200000000000000D000000000000000680000000000000038000000000000008000000001100003000000000200021105000000000000000000000001100003080000000d0002110a000000000000000000096d79696e7476617200000a5f5a3566756e6330760000"
|
|
## ^------- -Version=2
|
|
## ^------- -NumberOfSymbolEntries=2
|
|
## ^------- -NumberOfRelocationEntries=5
|
|
## ^------- -LengthOfImportFileIDStringTable=365
|
|
## ^------- -NumberOfImportFileIDs=1
|
|
## ^------- --LengthOfStringTable=0x12
|
|
## ^--------------- -OffsetToImportFileIDs=0xD0
|
|
## ^--------------- -OffsetToStringTable=0x68
|
|
## ^--------------- -OffsetToSymbolTable=0x38
|
|
## ^--------------- -OffsetToRelocationEntries=0x80
|
|
## ^--------------- Value=0x0000000110000300
|
|
## ^------- OffsetToStringTbl=2
|
|
## ^--- sectionNumber = 2
|
|
## ^- SymbolType=0x11
|
|
## ^- StorageClass=0x05
|
|
## ^------- ImportFileID=0
|
|
## ^-------ParameterCheckType=0
|
|
## ^--------------- Value=0x0000000110000308
|
|
## ^------- OffsetToStringTbl= 0x0d
|
|
## ^--- sectionNumber = 2
|
|
## ^- SymbolType=0x11
|
|
## ^- StorageClass=0x0a
|
|
## ^------- ImportFileID=0
|
|
## ^-------ParameterCheckType=0
|
|
## ^StringTable
|
|
|
|
# CHECK32: Loader Section {
|
|
# CHECK32-NEXT: Loader Section Symbols {
|
|
# CHECK32-NEXT: Symbol {
|
|
# CHECK32-NEXT: Name: myintvar
|
|
# CHECK32-NEXT: Virtual Address: 0x20000280
|
|
# CHECK32-NEXT: SectionNum: 2
|
|
# CHECK32-NEXT: SymbolType: 0x11
|
|
# CHECK32-NEXT: StorageClass: C_EXTDEF (0x5)
|
|
# CHECK32-NEXT: ImportFileID: 0x0
|
|
# CHECK32-NEXT: ParameterTypeCheck: 0
|
|
# CHECK32-NEXT: }
|
|
# CHECK32-NEXT: Symbol {
|
|
# CHECK32-NEXT: Name: func0__Fv
|
|
# CHECK32-NEXT: Virtual Address: 0x20000284
|
|
# CHECK32-NEXT: SectionNum: 2
|
|
# CHECK32-NEXT: SymbolType: 0x11
|
|
# CHECK32-NEXT: StorageClass: C_STRTAG (0xA)
|
|
# CHECK32-NEXT: ImportFileID: 0x0
|
|
# CHECK32-NEXT: ParameterTypeCheck: 0
|
|
# CHECK32-NEXT: }
|
|
# WARN: warning: '[[FILE]]': The end of the file was unexpectedly encountered
|
|
# CHECK32-NEXT: }
|
|
# CHECK32-NEXT: }
|
|
|
|
# CHECK64: Loader Section {
|
|
# CHECK64-NEXT: Loader Section Symbols {
|
|
# CHECK64-NEXT: Symbol {
|
|
# CHECK64-NEXT: Name: myintvar
|
|
# CHECK64-NEXT: Virtual Address: 0x110000300
|
|
# CHECK64-NEXT: SectionNum: 2
|
|
# CHECK64-NEXT: SymbolType: 0x11
|
|
# CHECK64-NEXT: StorageClass: C_EXTDEF (0x5)
|
|
# CHECK64-NEXT: ImportFileID: 0x0
|
|
# CHECK64-NEXT: ParameterTypeCheck: 0
|
|
# CHECK64-NEXT: }
|
|
# CHECK64-NEXT: Symbol {
|
|
# CHECK64-NEXT: Name: _Z5func0v
|
|
# CHECK64-NEXT: Virtual Address: 0x110000308
|
|
# CHECK64-NEXT: SectionNum: 2
|
|
# CHECK64-NEXT: SymbolType: 0x11
|
|
# CHECK64-NEXT: StorageClass: C_STRTAG (0xA)
|
|
# CHECK64-NEXT: ImportFileID: 0x0
|
|
# CHECK64-NEXT: ParameterTypeCheck: 0
|
|
# CHECK64-NEXT: }
|
|
# CHECK64-NEXT: }
|
|
# CHECK64-NEXT: }
|