# RUN: llvm-pdbutil yaml2pdb %s -pdb=%t.pdb
# RUN: lldb-test object-file %t.pdb | FileCheck %s
# CHECK: Plugin name: pdb
# CHECK: Architecture: x86_64-pc-windows-msvc
# CHECK: UUID: 61AF583F-29A8-7A6C-4C4C-44205044422E-00000003
# CHECK: Executable: false
# CHECK: Stripped: false
# CHECK: Type: debug info
# CHECK: Strata: user
# CHECK: Base VM address: 0xffffffffffffffff
# CHECK: There are no sections
---
MSF:
SuperBlock:
BlockSize: 4096
FreeBlockMap: 2
NumBlocks: 18
NumDirectoryBytes: 116
Unknown1: 0
BlockMapAddr: 3
NumDirectoryBlocks: 1
DirectoryBlocks: [ 17 ]
NumStreams: 15
FileSize: 73728
StreamSizes: [ 0, 93, 100, 550, 136, 0, 544, 576, 40, 20, 120, 368,
336, 49, 24 ]
StreamMap:
- Stream: [ ]
- Stream: [ 16 ]
- Stream: [ 7 ]
- Stream: [ 12 ]
- Stream: [ 14 ]
- Stream: [ ]
- Stream: [ 4 ]
- Stream: [ 5 ]
- Stream: [ 6 ]
- Stream: [ 8 ]
- Stream: [ 9 ]
- Stream: [ 10 ]
- Stream: [ 11 ]
- Stream: [ 13 ]
- Stream: [ 15 ]
StringTable:
- '/tmp/a.cpp'
PdbStream:
Age: 1
Guid: '{61AF583F-29A8-7A6C-4C4C-44205044422E}'
Signature: 1062776673
Features: [ VC140 ]
Version: VC70
DbiStream:
VerHeader: V70
Age: 3
BuildNumber: 36363
PdbDllVersion: 0
PdbDllRbld: 0
Flags: 0
MachineType: Amd64
Modules:
- Module: '/tmp/pdb.obj'
ObjFile: '/tmp/pdb.obj'
SourceFiles:
- '/tmp/a.cpp'
Subsections:
- !Lines
CodeSize: 28
Flags: [ ]
RelocOffset: 0
RelocSegment: 1
Blocks:
- FileName: '/tmp/a.cpp'
Lines:
- Offset: 0
LineStart: 1
IsStatement: false
EndDelta: 0
- Offset: 23
LineStart: 2
IsStatement: false
EndDelta: 0
Columns: []
- !FileChecksums
Checksums:
- FileName: '/tmp/a.cpp'
Kind: MD5
Checksum: DA1F9D293B90B487ADB2C711137770D3
Modi:
Signature: 4
Records:
- Kind: S_COMPILE3
Compile3Sym:
Flags: [ ]
Machine: X64
FrontendMajor: 12
FrontendMinor: 0
FrontendBuild: 0
FrontendQFE: 0
BackendMajor: 12000
BackendMinor: 0
BackendBuild: 0
BackendQFE: 0
Version: 'clang version 12.0.0 ([email protected]:llvm/llvm-project.git 8a08e08db6c2e4a5db485253f3186b0f9e739e15)'
- Kind: S_GPROC32
ProcSym:
PtrParent: 0
PtrEnd: 272
PtrNext: 0
CodeSize: 28
DbgStart: 0
DbgEnd: 0
FunctionType: 4098
Offset: 0
Segment: 1
Flags: [ ]
DisplayName: main
- Kind: S_FRAMEPROC
FrameProcSym:
TotalFrameBytes: 24
PaddingFrameBytes: 0
OffsetToPadding: 0
BytesOfCalleeSavedRegisters: 0
OffsetOfExceptionHandler: 0
SectionIdOfExceptionHandler: 0
Flags: [ ]
- Kind: S_LOCAL
LocalSym:
Type: 116
Flags: [ IsParameter ]
VarName: argc
- Kind: S_DEFRANGE_FRAMEPOINTER_REL
DefRangeFramePointerRelSym:
Offset: 4
Range:
OffsetStart: 23
ISectStart: 1
Range: 5
Gaps: []
- Kind: S_LOCAL
LocalSym:
Type: 4096
Flags: [ IsParameter ]
VarName: argv
- Kind: S_DEFRANGE_FRAMEPOINTER_REL
DefRangeFramePointerRelSym:
Offset: 8
Range:
OffsetStart: 23
ISectStart: 1
Range: 5
Gaps: []
- Kind: S_END
ScopeEndSym: {}
- Kind: S_BUILDINFO
BuildInfoSym:
BuildId: 4099
- Module: '* Linker *'
ObjFile: ''
Modi:
Signature: 4
Records:
- Kind: S_OBJNAME
ObjNameSym:
Signature: 0
ObjectName: '* Linker *'
- Kind: S_COMPILE3
Compile3Sym:
Flags: [ ]
Machine: X64
FrontendMajor: 0
FrontendMinor: 0
FrontendBuild: 0
FrontendQFE: 0
BackendMajor: 14
BackendMinor: 10
BackendBuild: 25019
BackendQFE: 0
Version: LLVM Linker
- Kind: S_ENVBLOCK
EnvBlockSym:
Entries:
- cwd
- '/tmp'
- exe
- '/tmp/lld-link'
- pdb
- '/tmp/a.pdb'
- cmd
- '/out:a.exe -debug pdb.obj /nodefaultlib /entry:main'
- Kind: S_SECTION
SectionSym:
SectionNumber: 1
Alignment: 12
Rva: 4096
Length: 28
Characteristics: 1610612768
Name: .text
- Kind: S_COFFGROUP
CoffGroupSym:
Size: 28
Characteristics: 1610612768
Offset: 0
Segment: 1
Name: .text
- Kind: S_SECTION
SectionSym:
SectionNumber: 2
Alignment: 12
Rva: 8192
Length: 72
Characteristics: 1073741888
Name: .rdata
- Kind: S_COFFGROUP
CoffGroupSym:
Size: 8
Characteristics: 1073741888
Offset: 64
Segment: 2
Name: .xdata
- Kind: S_SECTION
SectionSym:
SectionNumber: 3
Alignment: 12
Rva: 12288
Length: 12
Characteristics: 1073741888
Name: .pdata
- Kind: S_COFFGROUP
CoffGroupSym:
Size: 12
Characteristics: 1073741888
Offset: 0
Segment: 3
Name: .pdata
TpiStream:
Version: VC80
Records:
- Kind: LF_POINTER
Pointer:
ReferentType: 1648
Attrs: 65548
- Kind: LF_ARGLIST
ArgList:
ArgIndices: [ 116, 4096 ]
- Kind: LF_PROCEDURE
Procedure:
ReturnType: 116
CallConv: NearC
Options: [ None ]
ParameterCount: 2
ArgumentList: 4097
IpiStream:
Version: VC80
Records:
- Kind: LF_FUNC_ID
FuncId:
ParentScope: 0
FunctionType: 4098
Name: main
- Kind: LF_STRING_ID
StringId:
Id: 0
String: '/tmp'
- Kind: LF_STRING_ID
StringId:
Id: 0
String: a.cpp
- Kind: LF_BUILDINFO
BuildInfo:
ArgIndices: [ 4097, 0, 4098, 0, 0 ]
PublicsStream:
Records:
- Kind: S_PUB32
PublicSym32:
Flags: [ Function ]
Offset: 0
Segment: 1
Name: main
...