1# RUN: yaml2obj < %s > %t.obj
2# RUN: lld-link /out:%t.exe /entry:main /align:32 %t.obj
3# RUN: llvm-readobj --file-headers %t.exe | FileCheck %s
4
5# CHECK: SectionAlignment: 32
6
7# RUN: lld-link /out:%t.exe /entry:main /align:32 %t.obj 2>&1 \
8# RUN:   | FileCheck -check-prefix=WARN1 %s
9
10# WARN1: /align specified without /driver; image may not run
11
12# RUN: lld-link /out:%t.exe /entry:main /align:32 %t.obj /driver 2>&1 \
13# RUN:   | FileCheck -check-prefix=WARN2 --allow-empty %s
14
15# RUN: lld-link /out:%t.exe /entry:main %t.obj /driver 2>&1 \
16# RUN:   | FileCheck -check-prefix=WARN2 --allow-empty %s
17
18# WARN2-NOT: /align specified without /driver; image may not run
19
20--- !COFF
21header:
22  Machine:         IMAGE_FILE_MACHINE_AMD64
23  Characteristics: []
24sections:
25  - Name:            .text
26    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
27    Alignment:       4096
28    SectionData:     0000000000000000
29    Relocations:
30      - VirtualAddress:  0
31        SymbolName:      __ImageBase
32        Type:            IMAGE_REL_AMD64_ADDR64
33symbols:
34  - Name:            .text
35    Value:           0
36    SectionNumber:   1
37    SimpleType:      IMAGE_SYM_TYPE_NULL
38    ComplexType:     IMAGE_SYM_DTYPE_NULL
39    StorageClass:    IMAGE_SYM_CLASS_STATIC
40    SectionDefinition:
41      Length:          8
42      NumberOfRelocations: 1
43      NumberOfLinenumbers: 0
44      CheckSum:        0
45      Number:          0
46  - Name:            main
47    Value:           0
48    SectionNumber:   1
49    SimpleType:      IMAGE_SYM_TYPE_NULL
50    ComplexType:     IMAGE_SYM_DTYPE_NULL
51    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
52  - Name:            __ImageBase
53    Value:           0
54    SectionNumber:   0
55    SimpleType:      IMAGE_SYM_TYPE_NULL
56    ComplexType:     IMAGE_SYM_DTYPE_NULL
57    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
58...
59