1# RUN: yaml2obj < %s > %t.obj
2# RUN: lld-link /out:%t.exe /entry:mainCRTStartup /subsystem:console %t.obj
3# RUN: llvm-readobj --file-headers %t.exe | FileCheck %s
4
5# CHECK: Format: COFF-ARM64
6# CHECK: Arch: aarch64
7# CHECK: AddressSize: 64bit
8# CHECK: ImageFileHeader {
9# CHECK:   Machine: IMAGE_FILE_MACHINE_ARM64 (0xAA64)
10# CHECK:   Characteristics [ (0x22)
11# CHECK:     IMAGE_FILE_EXECUTABLE_IMAGE (0x2)
12# CHECK:     IMAGE_FILE_LARGE_ADDRESS_AWARE (0x20)
13# CHECK:   ]
14# CHECK: }
15# CHECK: ImageOptionalHeader {
16# CHECK:   Magic: 0x20B
17
18--- !COFF
19header:
20  Machine:         IMAGE_FILE_MACHINE_ARM64
21  Characteristics: []
22sections:
23  - Name:            .text
24    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_PURGEABLE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
25    Alignment:       4
26    SectionData:     'e0031f2ac0035fd6'
27symbols:
28  - Name:            .text
29    Value:           0
30    SectionNumber:   1
31    SimpleType:      IMAGE_SYM_TYPE_NULL
32    ComplexType:     IMAGE_SYM_DTYPE_NULL
33    StorageClass:    IMAGE_SYM_CLASS_STATIC
34    SectionDefinition:
35      Length:          8
36      NumberOfRelocations: 0
37      NumberOfLinenumbers: 0
38      CheckSum:        0
39      Number:          1
40  - Name:            mainCRTStartup
41    Value:           0
42    SectionNumber:   1
43    SimpleType:      IMAGE_SYM_TYPE_NULL
44    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
45    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
46...
47