From 783afd667d5214ff2b6f4e65626277faa5246d0b Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Thu, 15 Sep 2016 23:14:40 +0000 Subject: [PATCH] Check /pdb output using llvm-pdbdump. test/COFF/rsds.test checks only RSDS directory in a DLL and didn't check the validity of the PDF file produced. (Technically the produced PDB is not valid because it is really a stub, but this test is still good to have.) llvm-svn: 281678 --- lld/test/COFF/pdb.test | 86 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 lld/test/COFF/pdb.test diff --git a/lld/test/COFF/pdb.test b/lld/test/COFF/pdb.test new file mode 100644 index 000000000000..169b39924cb1 --- /dev/null +++ b/lld/test/COFF/pdb.test @@ -0,0 +1,86 @@ +# RUN: yaml2obj %s > %t.obj +# RUN: lld-link /debug /pdb:%t.pdb /dll /out:%t.dll /entry:DllMain %t.obj +# RUN: llvm-pdbdump pdb2yaml -stream-metadata -stream-directory %t.pdb | FileCheck %s + +# CHECK: MSF: +# CHECK-NEXT: SuperBlock: +# CHECK-NEXT: BlockSize: 4096 +# CHECK-NEXT: FreeBlockMap: 1 +# CHECK-NEXT: NumBlocks: 3 +# CHECK-NEXT: NumDirectoryBytes: 4 +# CHECK-NEXT: Unknown1: 0 +# CHECK-NEXT: BlockMapAddr: 1 +# CHECK-NEXT: NumDirectoryBlocks: 1 +# CHECK-NEXT: DirectoryBlocks: [ 2 ] +# CHECK-NEXT: NumStreams: 0 +# CHECK-NEXT: FileSize: 12288 +# CHECK-NEXT: StreamSizes: [ ] +# CHECK-NEXT: StreamMap: + +--- !COFF +header: + Machine: IMAGE_FILE_MACHINE_I386 + Characteristics: [ ] +sections: + - Name: .text + Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] + Alignment: 4 + SectionData: 31C0C3 + - Name: .data + Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ] + Alignment: 4 + SectionData: '' + - Name: .bss + Characteristics: [ IMAGE_SCN_CNT_UNINITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ] + Alignment: 4 + SectionData: '' +symbols: + - Name: .text + Value: 0 + SectionNumber: 1 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_NULL + StorageClass: IMAGE_SYM_CLASS_STATIC + SectionDefinition: + Length: 3 + NumberOfRelocations: 0 + NumberOfLinenumbers: 0 + CheckSum: 3963538403 + Number: 1 + - Name: .data + Value: 0 + SectionNumber: 2 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_NULL + StorageClass: IMAGE_SYM_CLASS_STATIC + SectionDefinition: + Length: 0 + NumberOfRelocations: 0 + NumberOfLinenumbers: 0 + CheckSum: 0 + Number: 2 + - Name: .bss + Value: 0 + SectionNumber: 3 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_NULL + StorageClass: IMAGE_SYM_CLASS_STATIC + SectionDefinition: + Length: 0 + NumberOfRelocations: 0 + NumberOfLinenumbers: 0 + CheckSum: 0 + Number: 3 + - Name: '@feat.00' + Value: 1 + SectionNumber: -1 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_NULL + StorageClass: IMAGE_SYM_CLASS_STATIC + - Name: _DllMain + Value: 0 + SectionNumber: 1 + SimpleType: IMAGE_SYM_TYPE_NULL + ComplexType: IMAGE_SYM_DTYPE_FUNCTION + StorageClass: IMAGE_SYM_CLASS_EXTERNAL +...