152 lines · yaml
1# This test has an S_GPROC32_ID symbol that doesn't refer to an LF_FUNC_ID2# record. Make sure we have reasonable behavior.3 4# RUN: yaml2obj %s -o %t.obj5# RUN: lld-link %t.obj -out:%t.exe -debug -pdb:%t.pdb -nodefaultlib -entry:main 2>&1 | FileCheck %s --check-prefix=WARNING6# RUN: llvm-pdbutil dump -symbols %t.pdb | FileCheck %s7# RUN: lld-link %t.obj -out:%t.exe -debug -debug:ghash -pdb:%t.pdb -nodefaultlib -entry:main 2>&1 | FileCheck %s --check-prefix=WARNING8# RUN: llvm-pdbutil dump -symbols %t.pdb | FileCheck %s9 10# WARNING: warning: procedure symbol record for `main` in {{.*}}.tmp.obj refers to PDB item index 0x{{.*}} which is not a valid function ID record11 12# CHECK: Mod 0000 | `{{.*}}pdb-invalid-func-type{{.*}}.tmp.obj`:13# CHECK: 4 | S_GPROC32 [size = 44] `main`14# CHECK: parent = 0, end = 80, addr = 0001:0000, code size = 315# CHECK: type = `0x0007 (<not translated>)`, debug start = 0, debug end = 2, flags = none16# CHECK: 48 | S_FRAMEPROC [size = 32]17# CHECK: 80 | S_END [size = 4]18 19--- !COFF20header:21 Machine: IMAGE_FILE_MACHINE_AMD6422 Characteristics: [ ]23sections:24 - Name: '.debug$S'25 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ]26 Alignment: 127 Subsections:28 - !Symbols29 Records:30 - Kind: S_GPROC32_ID31 ProcSym:32 CodeSize: 333 DbgStart: 034 DbgEnd: 235 # Refers to the wrong kind of type record (LF_PROCEDURE vs36 # LF_FUNC_ID).37 FunctionType: 409738 Flags: [ ]39 DisplayName: main40 - Kind: S_FRAMEPROC41 FrameProcSym:42 TotalFrameBytes: 043 PaddingFrameBytes: 044 OffsetToPadding: 045 BytesOfCalleeSavedRegisters: 046 OffsetOfExceptionHandler: 047 SectionIdOfExceptionHandler: 048 Flags: [ AsynchronousExceptionHandling, OptimizedForSpeed ]49 - Kind: S_PROC_ID_END50 ScopeEndSym:51 - !Lines52 CodeSize: 353 Flags: [ ]54 RelocOffset: 055 RelocSegment: 056 Blocks:57 - FileName: 'c:\src\llvm-project\build\t.c'58 Lines:59 - Offset: 060 LineStart: 161 IsStatement: true62 EndDelta: 063 Columns:64 - !FileChecksums65 Checksums:66 - FileName: 'c:\src\llvm-project\build\t.c'67 Kind: MD568 Checksum: 270A878DCC1B845655B162F56C4F502069 - !StringTable70 Strings:71 - 'c:\src\llvm-project\build\t.c'72 Relocations:73 - VirtualAddress: 4474 SymbolName: main75 Type: IMAGE_REL_AMD64_SECREL76 - VirtualAddress: 4877 SymbolName: main78 Type: IMAGE_REL_AMD64_SECTION79 - VirtualAddress: 10080 SymbolName: main81 Type: IMAGE_REL_AMD64_SECREL82 - VirtualAddress: 10483 SymbolName: main84 Type: IMAGE_REL_AMD64_SECTION85 - Name: '.debug$T'86 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ]87 Alignment: 188 Types:89 - Kind: LF_ARGLIST90 ArgList:91 ArgIndices: [ 0 ]92 - Kind: LF_PROCEDURE93 Procedure:94 ReturnType: 11695 CallConv: NearC96 Options: [ None ]97 ParameterCount: 098 ArgumentList: 409699 - Kind: LF_FUNC_ID100 FuncId:101 ParentScope: 0102 FunctionType: 4097103 Name: main104 - Name: '.text$mn'105 Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]106 Alignment: 16107 SectionData: 33C0C3108symbols:109 - Name: '.debug$S'110 Value: 0111 SectionNumber: 1112 SimpleType: IMAGE_SYM_TYPE_NULL113 ComplexType: IMAGE_SYM_DTYPE_NULL114 StorageClass: IMAGE_SYM_CLASS_STATIC115 SectionDefinition:116 Length: 328117 NumberOfRelocations: 4118 NumberOfLinenumbers: 0119 CheckSum: 0120 Number: 0121 - Name: '.debug$T'122 Value: 0123 SectionNumber: 2124 SimpleType: IMAGE_SYM_TYPE_NULL125 ComplexType: IMAGE_SYM_DTYPE_NULL126 StorageClass: IMAGE_SYM_CLASS_STATIC127 SectionDefinition:128 Length: 564129 NumberOfRelocations: 0130 NumberOfLinenumbers: 0131 CheckSum: 0132 Number: 0133 - Name: '.text$mn'134 Value: 0135 SectionNumber: 3136 SimpleType: IMAGE_SYM_TYPE_NULL137 ComplexType: IMAGE_SYM_DTYPE_NULL138 StorageClass: IMAGE_SYM_CLASS_STATIC139 SectionDefinition:140 Length: 3141 NumberOfRelocations: 0142 NumberOfLinenumbers: 0143 CheckSum: 4021952397144 Number: 0145 - Name: main146 Value: 0147 SectionNumber: 3148 SimpleType: IMAGE_SYM_TYPE_NULL149 ComplexType: IMAGE_SYM_DTYPE_FUNCTION150 StorageClass: IMAGE_SYM_CLASS_EXTERNAL151...152