diff options
Diffstat (limited to 'test/COFF/pdb.test')
| -rw-r--r-- | test/COFF/pdb.test | 222 |
1 files changed, 29 insertions, 193 deletions
diff --git a/test/COFF/pdb.test b/test/COFF/pdb.test index 5939b825f9a2..aa14d290c737 100644 --- a/test/COFF/pdb.test +++ b/test/COFF/pdb.test @@ -6,32 +6,28 @@ # RUN: llvm-pdbdump pdb2yaml -stream-metadata -stream-directory -pdb-stream \ # RUN: -dbi-stream -ipi-stream -tpi-stream %t.pdb | FileCheck %s +# RUN: llvm-pdbdump raw -modules -section-map -section-headers -section-contribs \ +# RUN: -tpi-records %t.pdb | FileCheck -check-prefix RAW %s + # CHECK: MSF: # CHECK-NEXT: SuperBlock: # CHECK-NEXT: BlockSize: 4096 # CHECK-NEXT: FreeBlockMap: 1 -# CHECK-NEXT: NumBlocks: 10 -# CHECK-NEXT: NumDirectoryBytes: 48 +# CHECK-NEXT: NumBlocks: +# CHECK-NEXT: NumDirectoryBytes: # CHECK-NEXT: Unknown1: 0 -# CHECK-NEXT: BlockMapAddr: 3 -# CHECK-NEXT: NumDirectoryBlocks: 1 -# CHECK-NEXT: DirectoryBlocks: [ 9 ] -# CHECK-NEXT: NumStreams: 6 -# CHECK-NEXT: FileSize: 40960 -# CHECK-NEXT: StreamSizes: [ 0, 48, 736, 390, 56, 160 ] +# CHECK-NEXT: BlockMapAddr: +# CHECK-NEXT: NumDirectoryBlocks: +# CHECK-NEXT: DirectoryBlocks: +# CHECK-NEXT: NumStreams: +# CHECK-NEXT: FileSize: +# CHECK-NEXT: StreamSizes: # CHECK-NEXT: StreamMap: -# CHECK-NEXT: - Stream: [ ] -# CHECK-NEXT: - Stream: [ 5 ] -# CHECK-NEXT: - Stream: [ 7 ] -# CHECK-NEXT: - Stream: [ 6 ] -# CHECK-NEXT: - Stream: [ 8 ] -# CHECK-NEXT: - Stream: [ 4 ] -# CHECK-NEXT: PdbStream: +# CHECK: PdbStream: # CHECK-NEXT: Age: 1 # CHECK-NEXT: Guid: # CHECK-NEXT: Signature: 0 # CHECK-NEXT: Version: VC70 -# CHECK-NEXT: NamedStreams: # CHECK-NEXT: DbiStream: # CHECK-NEXT: VerHeader: V110 # CHECK-NEXT: Age: 1 @@ -67,6 +63,9 @@ # CHECK-NEXT: Options: [ None ] # CHECK-NEXT: ParameterCount: 0 # CHECK-NEXT: ArgumentList: 4099 +# CHECK-NEXT: IpiStream: +# CHECK-NEXT: Version: VC80 +# CHECK-NEXT: Records: # CHECK-NEXT: - Kind: LF_FUNC_ID # CHECK-NEXT: FuncId: # CHECK-NEXT: ParentScope: 0 @@ -90,11 +89,11 @@ # CHECK-NEXT: Id: 0 # CHECK-NEXT: String: '-Z7 -c -MT -IC:\vs14\VC\INCLUDE -IC:\vs14\VC\ATLMFC\INCLUDE -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.10150.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\shared"' # CHECK-NEXT: - Kind: LF_SUBSTR_LIST -# CHECK-NEXT: ArgList: -# CHECK-NEXT: ArgIndices: [ 4105 ] +# CHECK-NEXT: StringList: +# CHECK-NEXT: StringIndices: [ 4100 ] # CHECK-NEXT: - Kind: LF_STRING_ID # CHECK-NEXT: StringId: -# CHECK-NEXT: Id: 4106 +# CHECK-NEXT: Id: 4101 # CHECK-NEXT: String: ' -I"C:\Program Files (x86)\Windows Kits\8.1\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\winrt" -TC -X' # CHECK-NEXT: - Kind: LF_STRING_ID # CHECK-NEXT: StringId: @@ -106,58 +105,18 @@ # CHECK-NEXT: String: 'D:\b\vc140.pdb' # CHECK-NEXT: - Kind: LF_BUILDINFO # CHECK-NEXT: BuildInfo: -# CHECK-NEXT: ArgIndices: [ 4103, 4104, 4108, 4109, 4107 ] +# CHECK-NEXT: ArgIndices: [ 4098, 4099, 4103, 4104, 4102 ] # CHECK-NEXT: - Kind: LF_STRING_ID # CHECK-NEXT: StringId: # CHECK-NEXT: Id: 0 # CHECK-NEXT: String: ret42-sub.c # CHECK-NEXT: - Kind: LF_BUILDINFO # CHECK-NEXT: BuildInfo: -# CHECK-NEXT: ArgIndices: [ 4103, 4104, 4111, 4109, 4107 ] -# CHECK-NEXT: IpiStream: -# CHECK-NEXT: Version: VC80 -# CHECK-NEXT: Records: +# CHECK-NEXT: ArgIndices: [ 4098, 4099, 4106, 4104, 4102 ] -# RAW: FileHeaders { -# RAW-NEXT: BlockSize: 4096 -# RAW-NEXT: FreeBlockMap: 1 -# RAW-NEXT: NumBlocks: 10 -# RAW-NEXT: NumDirectoryBytes: 48 -# RAW-NEXT: Unknown1: 0 -# RAW-NEXT: BlockMapAddr: 3 -# RAW-NEXT: NumDirectoryBlocks: 1 -# RAW-NEXT: DirectoryBlocks: [9] -# RAW-NEXT: NumStreams: 6 -# RAW-NEXT: } -# RAW-NEXT: Streams [ -# RAW-NEXT: Stream 0: [Old MSF Directory] (0 bytes) -# RAW-NEXT: Stream 1: [PDB Stream] (48 bytes) -# RAW-NEXT: Stream 2: [TPI Stream] (736 bytes) -# RAW-NEXT: Stream 3: [DBI Stream] (390 bytes) -# RAW-NEXT: Stream 4: [IPI Stream] (56 bytes) -# RAW-NEXT: Stream 5: [Section Header Data] (160 bytes) -# RAW-NEXT: ] -# RAW-NEXT: Msf Free Pages: [] -# RAW-NEXT: Orphaned Pages: [] -# RAW-NEXT: Multiply Used Pages: [] -# RAW-NEXT: Use After Free Pages: [] -# RAW-NEXT: StreamBlocks [ -# RAW-NEXT: Stream 0: [] -# RAW-NEXT: Stream 1: [5] -# RAW-NEXT: Stream 2: [7] -# RAW-NEXT: Stream 3: [6] -# RAW-NEXT: Stream 4: [8] -# RAW-NEXT: Stream 5: [4] -# RAW-NEXT: ] -# RAW-NEXT: PDB Stream { -# RAW-NEXT: Version: 20000404 -# RAW-NEXT: Signature: 0x0 -# RAW-NEXT: Age: 1 -# RAW-NEXT: Guid: {7EBCCC79-C488-0267-C898-06D7E94A8A10} -# RAW-NEXT: } -# RAW-NEXT: Type Info Stream (TPI) { +# RAW: Type Info Stream (TPI) { # RAW-NEXT: TPI Version: 20040203 -# RAW-NEXT: Record count: 17 +# RAW-NEXT: Record count: 5 # RAW-NEXT: Records [ # RAW-NEXT: { # RAW-NEXT: ArgList (0x1000) { @@ -212,126 +171,9 @@ # RAW-NEXT: ArgListType: (<no type>) (0x1003) # RAW-NEXT: } # RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: FuncId (0x1005) { -# RAW-NEXT: TypeLeafKind: LF_FUNC_ID (0x1601) -# RAW-NEXT: ParentScope: 0x0 -# RAW-NEXT: FunctionType: int (<no type>) (0x1004) -# RAW-NEXT: Name: main -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: FuncId (0x1006) { -# RAW-NEXT: TypeLeafKind: LF_FUNC_ID (0x1601) -# RAW-NEXT: ParentScope: 0x0 -# RAW-NEXT: FunctionType: int () (0x1001) -# RAW-NEXT: Name: foo -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x1007) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: 0x0 -# RAW-NEXT: StringData: D:\b -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x1008) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: 0x0 -# RAW-NEXT: StringData: C:\vs14\VC\BIN\amd64\cl.exe -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x1009) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: 0x0 -# RAW-NEXT: StringData: -Z7 -c -MT -IC:\vs14\VC\INCLUDE -IC:\vs14\VC\ATLMFC\INCLUDE -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.10150.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\shared" -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringList (0x100A) { -# RAW-NEXT: TypeLeafKind: LF_SUBSTR_LIST (0x1604) -# RAW-NEXT: NumArgs: 1 -# RAW-NEXT: Arguments [ -# RAW-NEXT: ArgType: -Z7 -c -MT -IC:\vs14\VC\INCLUDE -IC:\vs14\VC\ATLMFC\INCLUDE -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.10150.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\shared" (0x1009) -# RAW-NEXT: ] -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x100B) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: (-Z7 -c -MT -IC:\vs14\VC\INCLUDE -IC:\vs14\VC\ATLMFC\INCLUDE -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.10150.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\shared") (0x100A) -# RAW-NEXT: StringData: -I"C:\Program Files (x86)\Windows Kits\8.1\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\winrt" -TC -X -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x100C) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: 0x0 -# RAW-NEXT: StringData: ret42-main.c -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x100D) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: 0x0 -# RAW-NEXT: StringData: D:\b\vc140.pdb -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: BuildInfo (0x100E) { -# RAW-NEXT: TypeLeafKind: LF_BUILDINFO (0x1603) -# RAW-NEXT: NumArgs: 5 -# RAW-NEXT: Arguments [ -# RAW-NEXT: ArgType: D:\b (0x1007) -# RAW-NEXT: ArgType: C:\vs14\VC\BIN\amd64\cl.exe (0x1008) -# RAW-NEXT: ArgType: ret42-main.c (0x100C) -# RAW-NEXT: ArgType: D:\b\vc140.pdb (0x100D) -# RAW-NEXT: ArgType: -I"C:\Program Files (x86)\Windows Kits\8.1\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\winrt" -TC -X (0x100B) -# RAW-NEXT: ] -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: StringId (0x100F) { -# RAW-NEXT: TypeLeafKind: LF_STRING_ID (0x1605) -# RAW-NEXT: Id: 0x0 -# RAW-NEXT: StringData: ret42-sub.c -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: { -# RAW-NEXT: BuildInfo (0x1010) { -# RAW-NEXT: TypeLeafKind: LF_BUILDINFO (0x1603) -# RAW-NEXT: NumArgs: 5 -# RAW-NEXT: Arguments [ -# RAW-NEXT: ArgType: D:\b (0x1007) -# RAW-NEXT: ArgType: C:\vs14\VC\BIN\amd64\cl.exe (0x1008) -# RAW-NEXT: ArgType: ret42-sub.c (0x100F) -# RAW-NEXT: ArgType: D:\b\vc140.pdb (0x100D) -# RAW-NEXT: ArgType: -I"C:\Program Files (x86)\Windows Kits\8.1\include\um" -I"C:\Program Files (x86)\Windows Kits\8.1\include\winrt" -TC -X (0x100B) -# RAW-NEXT: ] -# RAW-NEXT: } -# RAW-NEXT: } -# RAW-NEXT: Hash { -# RAW-NEXT: Number of Hash Buckets: 4096 -# RAW-NEXT: Hash Key Size: 4 -# RAW-NEXT: Values: [] -# RAW-NEXT: Type Index Offsets: [] -# RAW-NEXT: Hash Adjustments: [] -# RAW-NEXT: } -# RAW-NEXT: ] -# RAW-NEXT: } -# RAW-NEXT: Type Info Stream (IPI) { -# RAW-NEXT: IPI Version: 20040203 -# RAW-NEXT: Record count: 0 -# RAW-NEXT: Records [ -# RAW-NEXT: Hash { -# RAW-NEXT: Number of Hash Buckets: 4096 -# RAW-NEXT: Hash Key Size: 4 -# RAW-NEXT: Values: [] -# RAW-NEXT: Type Index Offsets: [] -# RAW-NEXT: Hash Adjustments: [] -# RAW-NEXT: } +# RAW-NEXT: TypeIndexOffsets [ +# RAW-NEXT: Index: 0x1000, Offset: 0 +# RAW-NEXT: ] # RAW-NEXT: ] # RAW-NEXT: } # RAW-NEXT: DBI Stream { @@ -349,18 +191,16 @@ # RAW-NEXT: Modules [ # RAW-NEXT: { # RAW-NEXT: Name: * Linker * -# RAW-NEXT: Debug Stream Index: 65535 +# RAW-NEXT: Debug Stream Index: 9 # RAW-NEXT: Object File Name: # RAW-NEXT: Num Files: 0 # RAW-NEXT: Source File Name Idx: 0 # RAW-NEXT: Pdb File Name Idx: 0 # RAW-NEXT: Line Info Byte Size: 0 # RAW-NEXT: C13 Line Info Byte Size: 0 -# RAW-NEXT: Symbol Byte Size: 0 +# RAW-NEXT: Symbol Byte Size: 4 # RAW-NEXT: Type Server Index: 0 # RAW-NEXT: Has EC Info: No -# RAW-NEXT: 0 Contributing Source Files [ -# RAW-NEXT: ] # RAW-NEXT: } # RAW-NEXT: ] # RAW-NEXT: } @@ -488,7 +328,7 @@ # RAW-NEXT: SecName: 65535 # RAW-NEXT: ClassName: 65535 # RAW-NEXT: Offset: 0 -# RAW-NEXT: SecByteLength: 101 +# RAW-NEXT: SecByteLength: # RAW-NEXT: } # RAW-NEXT: Entry { # RAW-NEXT: Flags [ (0x208) @@ -504,8 +344,6 @@ # RAW-NEXT: SecByteLength: 4294967295 # RAW-NEXT: } # RAW-NEXT: ] -# RAW-NEXT: Globals Stream not present -# RAW-NEXT: Publics Stream not present # RAW-NEXT: Section Headers [ # RAW-NEXT: { # RAW-NEXT: Name: .pdata @@ -555,7 +393,7 @@ # RAW-NEXT: } # RAW-NEXT: { # RAW-NEXT: Name: .rdata -# RAW-NEXT: Virtual Size: 101 +# RAW-NEXT: Virtual Size: # RAW-NEXT: Virtual Address: 16384 # RAW-NEXT: Size of Raw Data: 512 # RAW-NEXT: File Pointer to Raw Data: 2560 @@ -569,5 +407,3 @@ # RAW-NEXT: ] # RAW-NEXT: } # RAW-NEXT: ] -# RAW-NEXT: New FPO [ -# RAW-NEXT: ] |
