summaryrefslogtreecommitdiffstats
path: root/llvm/test/DebugInfo/PDB/pdbdump-debug-subsections.test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/DebugInfo/PDB/pdbdump-debug-subsections.test')
-rw-r--r--llvm/test/DebugInfo/PDB/pdbdump-debug-subsections.test162
1 files changed, 162 insertions, 0 deletions
diff --git a/llvm/test/DebugInfo/PDB/pdbdump-debug-subsections.test b/llvm/test/DebugInfo/PDB/pdbdump-debug-subsections.test
new file mode 100644
index 00000000000..5b09158c320
--- /dev/null
+++ b/llvm/test/DebugInfo/PDB/pdbdump-debug-subsections.test
@@ -0,0 +1,162 @@
+; RUN: llvm-pdbdump yaml2pdb -pdb=%t.pdb %p/Inputs/debug-subsections.yaml
+
+; RUN: llvm-pdbdump pdb2yaml -all -no-file-headers %t.pdb | FileCheck --check-prefix=YAML %s
+; RUN: llvm-pdbdump raw -subsections=all %t.pdb | FileCheck --check-prefix=RAW %s
+
+YAML: Modules:
+YAML-NEXT: - Module: Foo.obj
+YAML-NEXT: ObjFile: Foo.obj
+YAML-NEXT: Subsections:
+YAML-NEXT: - !CrossModuleExports
+YAML-NEXT: Exports:
+YAML-NEXT: - LocalId: 4852
+YAML-NEXT: GlobalId: 9283
+YAML-NEXT: - LocalId: 2147487875
+YAML-NEXT: GlobalId: 9123
+YAML: - Module: Bar.obj
+YAML-NEXT: ObjFile: Bar.obj
+YAML-NEXT: Subsections:
+YAML-NEXT: - !CrossModuleExports
+YAML-NEXT: Exports:
+YAML-NEXT: - LocalId: 4265
+YAML-NEXT: GlobalId: 6097
+YAML-NEXT: - LocalId: 4297
+YAML-NEXT: GlobalId: 4677
+YAML-NEXT: - !CrossModuleImports
+YAML-NEXT: Imports:
+YAML-NEXT: - Module: Foo.obj
+YAML-NEXT: Imports: [ 4852, 2147487875 ]
+YAML: - Module: 'd:\src\llvm\test\DebugInfo\PDB\Inputs\empty.obj'
+YAML-NEXT: ObjFile: 'd:\src\llvm\test\DebugInfo\PDB\Inputs\empty.obj'
+YAML-NEXT: SourceFiles:
+YAML-NEXT: - 'd:\src\llvm\test\debuginfo\pdb\inputs\empty.cpp'
+YAML-NEXT: Subsections:
+YAML-NEXT: - !FileChecksums
+YAML-NEXT: Checksums:
+YAML-NEXT: - FileName: 'd:\src\llvm\test\debuginfo\pdb\inputs\empty.cpp'
+YAML-NEXT: Kind: MD5
+YAML-NEXT: Checksum: A0A5BD0D3ECD93FC29D19DE826FBF4BC
+YAML-NEXT: - FileName: 'f:\dd\externalapis\windows\10\sdk\inc\winerror.h'
+YAML-NEXT: Kind: MD5
+YAML-NEXT: Checksum: 1154D69F5B2650196E1FC34F4134E56B
+YAML-NEXT: - !Lines
+YAML-NEXT: CodeSize: 10
+YAML-NEXT: Flags: [ ]
+YAML-NEXT: RelocOffset: 16
+YAML-NEXT: RelocSegment: 1
+YAML-NEXT: Blocks:
+YAML-NEXT: - FileName: 'd:\src\llvm\test\debuginfo\pdb\inputs\empty.cpp'
+YAML-NEXT: Lines:
+YAML-NEXT: - Offset: 0
+YAML-NEXT: LineStart: 5
+YAML-NEXT: IsStatement: true
+YAML-NEXT: EndDelta: 0
+YAML-NEXT: - Offset: 3
+YAML-NEXT: LineStart: 6
+YAML-NEXT: IsStatement: true
+YAML-NEXT: EndDelta: 0
+YAML-NEXT: - Offset: 8
+YAML-NEXT: LineStart: 7
+YAML-NEXT: IsStatement: true
+YAML-NEXT: EndDelta: 0
+YAML-NEXT: Columns:
+YAML-NEXT: - !InlineeLines
+YAML-NEXT: HasExtraFiles: false
+YAML-NEXT: Sites:
+YAML-NEXT: - FileName: 'f:\dd\externalapis\windows\10\sdk\inc\winerror.h'
+YAML-NEXT: LineNum: 26950
+YAML-NEXT: Inlinee: 22767
+
+
+RAW: DBI Stream {
+RAW: Modules [
+RAW-NEXT: {
+RAW-NEXT: Name: Foo.obj
+RAW: Subsections [
+RAW-NEXT: CrossModuleExports {
+RAW-NEXT: Local: 0x12F4
+RAW-NEXT: Global: 0x2443
+RAW-NEXT: Local: 0x80001083
+RAW-NEXT: Global: 0x23A3
+RAW-NEXT: }
+RAW-NEXT: ]
+RAW-NEXT: }
+RAW-NEXT: {
+RAW-NEXT: Name: Bar.obj
+RAW: Subsections [
+RAW-NEXT: CrossModuleExports {
+RAW-NEXT: Local: 0x10A9
+RAW-NEXT: Global: 0x17D1
+RAW-NEXT: Local: 0x10C9
+RAW-NEXT: Global: 0x1245
+RAW-NEXT: }
+RAW-NEXT: CrossModuleImports {
+RAW-NEXT: Module: Foo.obj
+RAW-NEXT: Imports: [0x12F4, 0x80001083]
+RAW-NEXT: }
+RAW-NEXT: ]
+RAW-NEXT: }
+RAW-NEXT: {
+RAW-NEXT: Name: d:\src\llvm\test\DebugInfo\PDB\Inputs\empty.obj
+RAW: Subsections [
+RAW-NEXT: FileChecksums {
+RAW-NEXT: Checksum {
+RAW-NEXT: FileName: d:\src\llvm\test\debuginfo\pdb\inputs\empty.cpp
+RAW-NEXT: Kind: MD5 (0x1)
+RAW-NEXT: Checksum (
+RAW-NEXT: 0000: A0A5BD0D 3ECD93FC 29D19DE8 26FBF4BC |....>...)...&...|
+RAW-NEXT: )
+RAW-NEXT: }
+RAW-NEXT: Checksum {
+RAW-NEXT: FileName: f:\dd\externalapis\windows\10\sdk\inc\winerror.h
+RAW-NEXT: Kind: MD5 (0x1)
+RAW-NEXT: Checksum (
+RAW-NEXT: 0000: 1154D69F 5B265019 6E1FC34F 4134E56B |.T..[&P.n..OA4.k|
+RAW-NEXT: )
+RAW-NEXT: }
+RAW-NEXT: }
+RAW-NEXT: Lines {
+RAW-NEXT: Block {
+RAW-NEXT: RelocSegment: 1
+RAW-NEXT: RelocOffset: 16
+RAW-NEXT: CodeSize: 10
+RAW-NEXT: HasColumns: No
+RAW-NEXT: Lines {
+RAW-NEXT: FileName: d:\src\llvm\test\debuginfo\pdb\inputs\empty.cpp
+RAW-NEXT: Line {
+RAW-NEXT: Offset: 0
+RAW-NEXT: LineNumberStart: 5
+RAW-NEXT: EndDelta: 0
+RAW-NEXT: IsStatement: Yes
+RAW-NEXT: }
+RAW-NEXT: Line {
+RAW-NEXT: Offset: 3
+RAW-NEXT: LineNumberStart: 6
+RAW-NEXT: EndDelta: 0
+RAW-NEXT: IsStatement: Yes
+RAW-NEXT: }
+RAW-NEXT: Line {
+RAW-NEXT: Offset: 8
+RAW-NEXT: LineNumberStart: 7
+RAW-NEXT: EndDelta: 0
+RAW-NEXT: IsStatement: Yes
+RAW-NEXT: }
+RAW-NEXT: }
+RAW-NEXT: }
+RAW-NEXT: }
+RAW-NEXT: InlineeLines {
+RAW-NEXT: HasExtraFiles: No
+RAW-NEXT: Lines [
+RAW-NEXT: Inlinee {
+RAW-NEXT: FileName: f:\dd\externalapis\windows\10\sdk\inc\winerror.h
+RAW-NEXT: Function {
+RAW-NEXT: Index: 0x58ef (unknown function)
+RAW-NEXT: }
+RAW-NEXT: SourceLine: 26950
+RAW-NEXT: }
+RAW-NEXT: ]
+RAW-NEXT: }
+RAW-NEXT: ]
+RAW-NEXT: }
+RAW-NEXT: ]
+RAW-NEXT:}
OpenPOWER on IntegriCloud