1# REQUIRES: lld
2# RUN: yaml2obj < %s > %t.obj
3#
4# RUN: lld-link /machine:x64 /out:%t.dll /noentry /nodefaultlib /debug /dll %t.obj /export:DllFunc
5#
6# RUN: lldb-test object-file %t.dll | FileCheck -check-prefix=BASIC-CHECK %s
7# RUN: lldb-test object-file -dep-modules %t.dll | FileCheck -check-prefix=DEPS %s
8
9# BASIC-CHECK: Plugin name: pe-coff
10
11# UUID should not be empty if the module is built with debug info.
12# BASIC-CHECK-DAG: UUID: {{[0-9A-F]{7,}[0-9A-F]}}-{{.*}}
13
14# BASIC-CHECK: Showing 3 subsections
15# BASIC-CHECK:  Index: 0
16# BASIC-CHECK:  Name: .text
17# BASIC-CHECK:  Type: code
18# BASIC-CHECK:  VM size: 22
19# BASIC-CHECK:  File size: 512
20#
21# BASIC-CHECK:  Index: 1
22# BASIC-CHECK:  Name: .rdata
23# BASIC-CHECK:  Type: data
24# BASIC-CHECK:  VM size: {{.}}
25# BASIC-CHECK:  File size: 512
26#
27# BASIC-CHECK:  Index: 2
28# BASIC-CHECK:  Name: .pdata
29# BASIC-CHECK:  Type: data
30# BASIC-CHECK:  VM size: 12
31# BASIC-CHECK:  File size: 512
32#
33# DEPS: Showing 0 dependent module(s)
34
35
36--- !COFF
37header:
38  Machine:         IMAGE_FILE_MACHINE_AMD64
39  Characteristics: [  ]
40sections:
41  - Name:            .text
42    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
43    Alignment:       16
44    SectionData:     50894C24048B4C24040FAF4C2404890C248B042459C3
45  - Name:            .data
46    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
47    Alignment:       4
48    SectionData:     ''
49  - Name:            .bss
50    Characteristics: [ IMAGE_SCN_CNT_UNINITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
51    Alignment:       4
52    SectionData:     ''
53  - Name:            .xdata
54    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
55    Alignment:       4
56    SectionData:     '0101010001020000'
57  - Name:            .drectve
58    Characteristics: [ IMAGE_SCN_LNK_INFO, IMAGE_SCN_LNK_REMOVE ]
59    Alignment:       1
60    SectionData:     202F44454641554C544C49423A6C6962636D742E6C6962202F44454641554C544C49423A6F6C646E616D65732E6C6962
61  - Name:            .pdata
62    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
63    Alignment:       4
64    SectionData:     '000000001600000000000000'
65    Relocations:
66      - VirtualAddress:  0
67        SymbolName:      'DllFunc'
68        Type:            IMAGE_REL_AMD64_ADDR32NB
69      - VirtualAddress:  4
70        SymbolName:      'DllFunc'
71        Type:            IMAGE_REL_AMD64_ADDR32NB
72      - VirtualAddress:  8
73        SymbolName:      .xdata
74        Type:            IMAGE_REL_AMD64_ADDR32NB
75  - Name:            .llvm_addrsig
76    Characteristics: [ IMAGE_SCN_LNK_REMOVE ]
77    Alignment:       1
78    SectionData:     ''
79symbols:
80  - Name:            .text
81    Value:           0
82    SectionNumber:   1
83    SimpleType:      IMAGE_SYM_TYPE_NULL
84    ComplexType:     IMAGE_SYM_DTYPE_NULL
85    StorageClass:    IMAGE_SYM_CLASS_STATIC
86    SectionDefinition:
87      Length:          22
88      NumberOfRelocations: 0
89      NumberOfLinenumbers: 0
90      CheckSum:        3054557294
91      Number:          1
92  - Name:            .data
93    Value:           0
94    SectionNumber:   2
95    SimpleType:      IMAGE_SYM_TYPE_NULL
96    ComplexType:     IMAGE_SYM_DTYPE_NULL
97    StorageClass:    IMAGE_SYM_CLASS_STATIC
98    SectionDefinition:
99      Length:          0
100      NumberOfRelocations: 0
101      NumberOfLinenumbers: 0
102      CheckSum:        0
103      Number:          2
104  - Name:            .bss
105    Value:           0
106    SectionNumber:   3
107    SimpleType:      IMAGE_SYM_TYPE_NULL
108    ComplexType:     IMAGE_SYM_DTYPE_NULL
109    StorageClass:    IMAGE_SYM_CLASS_STATIC
110    SectionDefinition:
111      Length:          0
112      NumberOfRelocations: 0
113      NumberOfLinenumbers: 0
114      CheckSum:        0
115      Number:          3
116  - Name:            .xdata
117    Value:           0
118    SectionNumber:   4
119    SimpleType:      IMAGE_SYM_TYPE_NULL
120    ComplexType:     IMAGE_SYM_DTYPE_NULL
121    StorageClass:    IMAGE_SYM_CLASS_STATIC
122    SectionDefinition:
123      Length:          8
124      NumberOfRelocations: 0
125      NumberOfLinenumbers: 0
126      CheckSum:        448359300
127      Number:          4
128  - Name:            .drectve
129    Value:           0
130    SectionNumber:   5
131    SimpleType:      IMAGE_SYM_TYPE_NULL
132    ComplexType:     IMAGE_SYM_DTYPE_NULL
133    StorageClass:    IMAGE_SYM_CLASS_STATIC
134    SectionDefinition:
135      Length:          48
136      NumberOfRelocations: 0
137      NumberOfLinenumbers: 0
138      CheckSum:        149686238
139      Number:          5
140  - Name:            .pdata
141    Value:           0
142    SectionNumber:   6
143    SimpleType:      IMAGE_SYM_TYPE_NULL
144    ComplexType:     IMAGE_SYM_DTYPE_NULL
145    StorageClass:    IMAGE_SYM_CLASS_STATIC
146    SectionDefinition:
147      Length:          12
148      NumberOfRelocations: 3
149      NumberOfLinenumbers: 0
150      CheckSum:        3134470316
151      Number:          6
152  - Name:            .llvm_addrsig
153    Value:           0
154    SectionNumber:   7
155    SimpleType:      IMAGE_SYM_TYPE_NULL
156    ComplexType:     IMAGE_SYM_DTYPE_NULL
157    StorageClass:    IMAGE_SYM_CLASS_STATIC
158    SectionDefinition:
159      Length:          0
160      NumberOfRelocations: 0
161      NumberOfLinenumbers: 0
162      CheckSum:        0
163      Number:          7
164  - Name:            '@feat.00'
165    Value:           0
166    SectionNumber:   -1
167    SimpleType:      IMAGE_SYM_TYPE_NULL
168    ComplexType:     IMAGE_SYM_DTYPE_NULL
169    StorageClass:    IMAGE_SYM_CLASS_STATIC
170  - Name:            'DllFunc'
171    Value:           0
172    SectionNumber:   1
173    SimpleType:      IMAGE_SYM_TYPE_NULL
174    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
175    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
176...
177