xref: /llvm-project/lldb/test/Shell/ObjectFile/PDB/object.test (revision cb9a7c22ee6789569e28dde073e6827761b4d003)
1242e1e99SZequan Wu# RUN: llvm-pdbutil yaml2pdb %s -pdb=%t.pdb
2242e1e99SZequan Wu# RUN: lldb-test object-file %t.pdb | FileCheck %s
3242e1e99SZequan Wu
4242e1e99SZequan Wu# CHECK: Plugin name: pdb
5242e1e99SZequan Wu# CHECK: Architecture: x86_64-pc-windows-msvc
6*cb9a7c22SZequan Wu# CHECK: UUID: 61AF583F-29A8-7A6C-4C4C-44205044422E-00000003
7242e1e99SZequan Wu# CHECK: Executable: false
8242e1e99SZequan Wu# CHECK: Stripped: false
9242e1e99SZequan Wu# CHECK: Type: debug info
10242e1e99SZequan Wu# CHECK: Strata: user
11242e1e99SZequan Wu# CHECK: Base VM address: 0xffffffffffffffff
12242e1e99SZequan Wu# CHECK: There are no sections
13242e1e99SZequan Wu
14242e1e99SZequan Wu---
15242e1e99SZequan WuMSF:
16242e1e99SZequan Wu  SuperBlock:
17242e1e99SZequan Wu    BlockSize:       4096
18242e1e99SZequan Wu    FreeBlockMap:    2
19242e1e99SZequan Wu    NumBlocks:       18
20242e1e99SZequan Wu    NumDirectoryBytes: 116
21242e1e99SZequan Wu    Unknown1:        0
22242e1e99SZequan Wu    BlockMapAddr:    3
23242e1e99SZequan Wu  NumDirectoryBlocks: 1
24242e1e99SZequan Wu  DirectoryBlocks: [ 17 ]
25242e1e99SZequan Wu  NumStreams:      15
26242e1e99SZequan Wu  FileSize:        73728
27242e1e99SZequan WuStreamSizes:     [ 0, 93, 100, 550, 136, 0, 544, 576, 40, 20, 120, 368,
28242e1e99SZequan Wu                   336, 49, 24 ]
29242e1e99SZequan WuStreamMap:
30242e1e99SZequan Wu  - Stream:          [  ]
31242e1e99SZequan Wu  - Stream:          [ 16 ]
32242e1e99SZequan Wu  - Stream:          [ 7 ]
33242e1e99SZequan Wu  - Stream:          [ 12 ]
34242e1e99SZequan Wu  - Stream:          [ 14 ]
35242e1e99SZequan Wu  - Stream:          [  ]
36242e1e99SZequan Wu  - Stream:          [ 4 ]
37242e1e99SZequan Wu  - Stream:          [ 5 ]
38242e1e99SZequan Wu  - Stream:          [ 6 ]
39242e1e99SZequan Wu  - Stream:          [ 8 ]
40242e1e99SZequan Wu  - Stream:          [ 9 ]
41242e1e99SZequan Wu  - Stream:          [ 10 ]
42242e1e99SZequan Wu  - Stream:          [ 11 ]
43242e1e99SZequan Wu  - Stream:          [ 13 ]
44242e1e99SZequan Wu  - Stream:          [ 15 ]
45242e1e99SZequan WuStringTable:
46242e1e99SZequan Wu  - '/tmp/a.cpp'
47242e1e99SZequan WuPdbStream:
48242e1e99SZequan Wu  Age:             1
49242e1e99SZequan Wu  Guid:            '{61AF583F-29A8-7A6C-4C4C-44205044422E}'
50242e1e99SZequan Wu  Signature:       1062776673
51242e1e99SZequan Wu  Features:        [ VC140 ]
52242e1e99SZequan Wu  Version:         VC70
53242e1e99SZequan WuDbiStream:
54242e1e99SZequan Wu  VerHeader:       V70
55*cb9a7c22SZequan Wu  Age:             3
56242e1e99SZequan Wu  BuildNumber:     36363
57242e1e99SZequan Wu  PdbDllVersion:   0
58242e1e99SZequan Wu  PdbDllRbld:      0
59242e1e99SZequan Wu  Flags:           0
60242e1e99SZequan Wu  MachineType:     Amd64
61242e1e99SZequan Wu  Modules:
62242e1e99SZequan Wu    - Module:          '/tmp/pdb.obj'
63242e1e99SZequan Wu      ObjFile:         '/tmp/pdb.obj'
64242e1e99SZequan Wu      SourceFiles:
65242e1e99SZequan Wu        - '/tmp/a.cpp'
66242e1e99SZequan Wu      Subsections:
67242e1e99SZequan Wu        - !Lines
68242e1e99SZequan Wu          CodeSize:        28
69242e1e99SZequan Wu          Flags:           [  ]
70242e1e99SZequan Wu          RelocOffset:     0
71242e1e99SZequan Wu          RelocSegment:    1
72242e1e99SZequan Wu          Blocks:
73242e1e99SZequan Wu            - FileName:        '/tmp/a.cpp'
74242e1e99SZequan Wu              Lines:
75242e1e99SZequan Wu                - Offset:          0
76242e1e99SZequan Wu                  LineStart:       1
77242e1e99SZequan Wu                  IsStatement:     false
78242e1e99SZequan Wu                  EndDelta:        0
79242e1e99SZequan Wu                - Offset:          23
80242e1e99SZequan Wu                  LineStart:       2
81242e1e99SZequan Wu                  IsStatement:     false
82242e1e99SZequan Wu                  EndDelta:        0
83242e1e99SZequan Wu              Columns:         []
84242e1e99SZequan Wu        - !FileChecksums
85242e1e99SZequan Wu          Checksums:
86242e1e99SZequan Wu            - FileName:        '/tmp/a.cpp'
87242e1e99SZequan Wu              Kind:            MD5
88242e1e99SZequan Wu              Checksum:        DA1F9D293B90B487ADB2C711137770D3
89242e1e99SZequan Wu      Modi:
90242e1e99SZequan Wu        Signature:       4
91242e1e99SZequan Wu        Records:
92242e1e99SZequan Wu          - Kind:            S_COMPILE3
93242e1e99SZequan Wu            Compile3Sym:
94242e1e99SZequan Wu              Flags:           [  ]
95242e1e99SZequan Wu              Machine:         X64
96242e1e99SZequan Wu              FrontendMajor:   12
97242e1e99SZequan Wu              FrontendMinor:   0
98242e1e99SZequan Wu              FrontendBuild:   0
99242e1e99SZequan Wu              FrontendQFE:     0
100242e1e99SZequan Wu              BackendMajor:    12000
101242e1e99SZequan Wu              BackendMinor:    0
102242e1e99SZequan Wu              BackendBuild:    0
103242e1e99SZequan Wu              BackendQFE:      0
104242e1e99SZequan Wu              Version:         'clang version 12.0.0 (git@github.com:llvm/llvm-project.git 8a08e08db6c2e4a5db485253f3186b0f9e739e15)'
105242e1e99SZequan Wu          - Kind:            S_GPROC32
106242e1e99SZequan Wu            ProcSym:
107242e1e99SZequan Wu              PtrParent:       0
108242e1e99SZequan Wu              PtrEnd:          272
109242e1e99SZequan Wu              PtrNext:         0
110242e1e99SZequan Wu              CodeSize:        28
111242e1e99SZequan Wu              DbgStart:        0
112242e1e99SZequan Wu              DbgEnd:          0
113242e1e99SZequan Wu              FunctionType:    4098
114242e1e99SZequan Wu              Offset:          0
115242e1e99SZequan Wu              Segment:         1
116242e1e99SZequan Wu              Flags:           [  ]
117242e1e99SZequan Wu              DisplayName:     main
118242e1e99SZequan Wu          - Kind:            S_FRAMEPROC
119242e1e99SZequan Wu            FrameProcSym:
120242e1e99SZequan Wu              TotalFrameBytes: 24
121242e1e99SZequan Wu              PaddingFrameBytes: 0
122242e1e99SZequan Wu              OffsetToPadding: 0
123242e1e99SZequan Wu              BytesOfCalleeSavedRegisters: 0
124242e1e99SZequan Wu              OffsetOfExceptionHandler: 0
125242e1e99SZequan Wu              SectionIdOfExceptionHandler: 0
126242e1e99SZequan Wu              Flags:           [  ]
127242e1e99SZequan Wu          - Kind:            S_LOCAL
128242e1e99SZequan Wu            LocalSym:
129242e1e99SZequan Wu              Type:            116
130242e1e99SZequan Wu              Flags:           [ IsParameter ]
131242e1e99SZequan Wu              VarName:         argc
132242e1e99SZequan Wu          - Kind:            S_DEFRANGE_FRAMEPOINTER_REL
133242e1e99SZequan Wu            DefRangeFramePointerRelSym:
134242e1e99SZequan Wu              Offset:          4
135242e1e99SZequan Wu              Range:
136242e1e99SZequan Wu                OffsetStart:     23
137242e1e99SZequan Wu                ISectStart:      1
138242e1e99SZequan Wu                Range:           5
139242e1e99SZequan Wu              Gaps:            []
140242e1e99SZequan Wu          - Kind:            S_LOCAL
141242e1e99SZequan Wu            LocalSym:
142242e1e99SZequan Wu              Type:            4096
143242e1e99SZequan Wu              Flags:           [ IsParameter ]
144242e1e99SZequan Wu              VarName:         argv
145242e1e99SZequan Wu          - Kind:            S_DEFRANGE_FRAMEPOINTER_REL
146242e1e99SZequan Wu            DefRangeFramePointerRelSym:
147242e1e99SZequan Wu              Offset:          8
148242e1e99SZequan Wu              Range:
149242e1e99SZequan Wu                OffsetStart:     23
150242e1e99SZequan Wu                ISectStart:      1
151242e1e99SZequan Wu                Range:           5
152242e1e99SZequan Wu              Gaps:            []
153242e1e99SZequan Wu          - Kind:            S_END
154242e1e99SZequan Wu            ScopeEndSym:     {}
155242e1e99SZequan Wu          - Kind:            S_BUILDINFO
156242e1e99SZequan Wu            BuildInfoSym:
157242e1e99SZequan Wu              BuildId:         4099
158242e1e99SZequan Wu    - Module:          '* Linker *'
159242e1e99SZequan Wu      ObjFile:         ''
160242e1e99SZequan Wu      Modi:
161242e1e99SZequan Wu        Signature:       4
162242e1e99SZequan Wu        Records:
163242e1e99SZequan Wu          - Kind:            S_OBJNAME
164242e1e99SZequan Wu            ObjNameSym:
165242e1e99SZequan Wu              Signature:       0
166242e1e99SZequan Wu              ObjectName:      '* Linker *'
167242e1e99SZequan Wu          - Kind:            S_COMPILE3
168242e1e99SZequan Wu            Compile3Sym:
169242e1e99SZequan Wu              Flags:           [  ]
170242e1e99SZequan Wu              Machine:         X64
171242e1e99SZequan Wu              FrontendMajor:   0
172242e1e99SZequan Wu              FrontendMinor:   0
173242e1e99SZequan Wu              FrontendBuild:   0
174242e1e99SZequan Wu              FrontendQFE:     0
175242e1e99SZequan Wu              BackendMajor:    14
176242e1e99SZequan Wu              BackendMinor:    10
177242e1e99SZequan Wu              BackendBuild:    25019
178242e1e99SZequan Wu              BackendQFE:      0
179242e1e99SZequan Wu              Version:         LLVM Linker
180242e1e99SZequan Wu          - Kind:            S_ENVBLOCK
181242e1e99SZequan Wu            EnvBlockSym:
182242e1e99SZequan Wu              Entries:
183242e1e99SZequan Wu                - cwd
184242e1e99SZequan Wu                - '/tmp'
185242e1e99SZequan Wu                - exe
186242e1e99SZequan Wu                - '/tmp/lld-link'
187242e1e99SZequan Wu                - pdb
188242e1e99SZequan Wu                - '/tmp/a.pdb'
189242e1e99SZequan Wu                - cmd
190242e1e99SZequan Wu                - '/out:a.exe -debug pdb.obj /nodefaultlib /entry:main'
191242e1e99SZequan Wu          - Kind:            S_SECTION
192242e1e99SZequan Wu            SectionSym:
193242e1e99SZequan Wu              SectionNumber:   1
194242e1e99SZequan Wu              Alignment:       12
195242e1e99SZequan Wu              Rva:             4096
196242e1e99SZequan Wu              Length:          28
197242e1e99SZequan Wu              Characteristics: 1610612768
198242e1e99SZequan Wu              Name:            .text
199242e1e99SZequan Wu          - Kind:            S_COFFGROUP
200242e1e99SZequan Wu            CoffGroupSym:
201242e1e99SZequan Wu              Size:            28
202242e1e99SZequan Wu              Characteristics: 1610612768
203242e1e99SZequan Wu              Offset:          0
204242e1e99SZequan Wu              Segment:         1
205242e1e99SZequan Wu              Name:            .text
206242e1e99SZequan Wu          - Kind:            S_SECTION
207242e1e99SZequan Wu            SectionSym:
208242e1e99SZequan Wu              SectionNumber:   2
209242e1e99SZequan Wu              Alignment:       12
210242e1e99SZequan Wu              Rva:             8192
211242e1e99SZequan Wu              Length:          72
212242e1e99SZequan Wu              Characteristics: 1073741888
213242e1e99SZequan Wu              Name:            .rdata
214242e1e99SZequan Wu          - Kind:            S_COFFGROUP
215242e1e99SZequan Wu            CoffGroupSym:
216242e1e99SZequan Wu              Size:            8
217242e1e99SZequan Wu              Characteristics: 1073741888
218242e1e99SZequan Wu              Offset:          64
219242e1e99SZequan Wu              Segment:         2
220242e1e99SZequan Wu              Name:            .xdata
221242e1e99SZequan Wu          - Kind:            S_SECTION
222242e1e99SZequan Wu            SectionSym:
223242e1e99SZequan Wu              SectionNumber:   3
224242e1e99SZequan Wu              Alignment:       12
225242e1e99SZequan Wu              Rva:             12288
226242e1e99SZequan Wu              Length:          12
227242e1e99SZequan Wu              Characteristics: 1073741888
228242e1e99SZequan Wu              Name:            .pdata
229242e1e99SZequan Wu          - Kind:            S_COFFGROUP
230242e1e99SZequan Wu            CoffGroupSym:
231242e1e99SZequan Wu              Size:            12
232242e1e99SZequan Wu              Characteristics: 1073741888
233242e1e99SZequan Wu              Offset:          0
234242e1e99SZequan Wu              Segment:         3
235242e1e99SZequan Wu              Name:            .pdata
236242e1e99SZequan WuTpiStream:
237242e1e99SZequan Wu  Version:         VC80
238242e1e99SZequan Wu  Records:
239242e1e99SZequan Wu    - Kind:            LF_POINTER
240242e1e99SZequan Wu      Pointer:
241242e1e99SZequan Wu        ReferentType:    1648
242242e1e99SZequan Wu        Attrs:           65548
243242e1e99SZequan Wu    - Kind:            LF_ARGLIST
244242e1e99SZequan Wu      ArgList:
245242e1e99SZequan Wu        ArgIndices:      [ 116, 4096 ]
246242e1e99SZequan Wu    - Kind:            LF_PROCEDURE
247242e1e99SZequan Wu      Procedure:
248242e1e99SZequan Wu        ReturnType:      116
249242e1e99SZequan Wu        CallConv:        NearC
250242e1e99SZequan Wu        Options:         [ None ]
251242e1e99SZequan Wu        ParameterCount:  2
252242e1e99SZequan Wu        ArgumentList:    4097
253242e1e99SZequan WuIpiStream:
254242e1e99SZequan Wu  Version:         VC80
255242e1e99SZequan Wu  Records:
256242e1e99SZequan Wu    - Kind:            LF_FUNC_ID
257242e1e99SZequan Wu      FuncId:
258242e1e99SZequan Wu        ParentScope:     0
259242e1e99SZequan Wu        FunctionType:    4098
260242e1e99SZequan Wu        Name:            main
261242e1e99SZequan Wu    - Kind:            LF_STRING_ID
262242e1e99SZequan Wu      StringId:
263242e1e99SZequan Wu        Id:              0
264242e1e99SZequan Wu        String:          '/tmp'
265242e1e99SZequan Wu    - Kind:            LF_STRING_ID
266242e1e99SZequan Wu      StringId:
267242e1e99SZequan Wu        Id:              0
268242e1e99SZequan Wu        String:          a.cpp
269242e1e99SZequan Wu    - Kind:            LF_BUILDINFO
270242e1e99SZequan Wu      BuildInfo:
271242e1e99SZequan Wu        ArgIndices:      [ 4097, 0, 4098, 0, 0 ]
272242e1e99SZequan WuPublicsStream:
273242e1e99SZequan Wu  Records:
274242e1e99SZequan Wu    - Kind:            S_PUB32
275242e1e99SZequan Wu      PublicSym32:
276242e1e99SZequan Wu        Flags:           [ Function ]
277242e1e99SZequan Wu        Offset:          0
278242e1e99SZequan Wu        Segment:         1
279242e1e99SZequan Wu        Name:            main
280242e1e99SZequan Wu...
281