brintos

brintos / llvm-project-archived public Read only

0
0
Text · 16.5 KiB · fad042f Raw
463 lines · yaml
1# // Compile with clang-cl -m32 /Z7 /GS- /c t.obj pdb-framedata.cpp2#3# int func(int x, int y) {4#  return x + y;5# }6#7# int main(int argc, char **argv) {8#   return func(argc, argc+1);9# }10 11# RUN: yaml2obj %s -o %t.obj12# RUN: lld-link %t.obj -debug -entry:main -nodefaultlib -debug -out:%t.exe -pdb:%t.pdb13# RUN: llvm-pdbutil dump -fpo %t.pdb | FileCheck %s14 15# CHECK:                         New FPO Data16# CHECK-NEXT: ============================================================17# CHECK-NEXT:   RVA    | Code | Locals | Params | Stack | Prolog | Saved Regs | Has SEH | Has C++EH | Start | Program18# CHECK-NEXT: 00001000 |   31 |      0 |      8 |     0 |      6 |          0 |   false |     false | false | $T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + =19# CHECK-NEXT: 00001001 |   30 |      0 |      8 |     0 |      5 |          4 |   false |     false | false | $T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ =20# CHECK-NEXT: 00001003 |   28 |      0 |      8 |     0 |      3 |          4 |   false |     false | false | $T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ =21# CHECK-NEXT: 00001020 |   53 |      0 |      8 |     0 |      7 |          0 |   false |     false | false | $T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + =22# CHECK-NEXT: 00001021 |   52 |      0 |      8 |     0 |      6 |          4 |   false |     false | false | $T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ =23# CHECK-NEXT: 00001023 |   50 |      0 |      8 |     0 |      4 |          4 |   false |     false | false | $T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ =24# CHECK-NEXT: 00001024 |   49 |      0 |      8 |     0 |      3 |          8 |   false |     false | false | $T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = $esi $T0 8 - ^ =25 26 27--- !COFF28header:29  Machine:         IMAGE_FILE_MACHINE_I38630  Characteristics: [  ]31sections:32  - Name:            .text33    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]34    Alignment:       1635    SectionData:     5589E583EC088B450C8B4D088B550803550C8945FC89D0894DF883C4085DC3905589E55683EC148B450C8B4D08C745F8000000008B550883C2018B7508893424895424048945F4894DF0E80000000083C4145E5DC336    Relocations:37      - VirtualAddress:  7538        SymbolName:      '?func@@YAHHH@Z'39        Type:            IMAGE_REL_I386_REL3240  - Name:            .data41    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]42    Alignment:       443    SectionData:     ''44  - Name:            .bss45    Characteristics: [ IMAGE_SCN_CNT_UNINITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]46    Alignment:       447    SectionData:     ''48  - Name:            .drectve49    Characteristics: [ IMAGE_SCN_LNK_INFO, IMAGE_SCN_LNK_REMOVE ]50    Alignment:       151    SectionData:     202F44454641554C544C49423A6C6962636D742E6C6962202F44454641554C544C49423A6F6C646E616D65732E6C696252  - Name:            '.debug$S'53    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ]54    Alignment:       455    Subsections:56      - !Symbols57        Records:58          - Kind:            S_COMPILE359            Compile3Sym:60              Flags:           [  ]61              Machine:         Pentium362              FrontendMajor:   863              FrontendMinor:   064              FrontendBuild:   065              FrontendQFE:     066              BackendMajor:    800067              BackendMinor:    068              BackendBuild:    069              BackendQFE:      070              Version:         'clang version 8.0.0 '71      - !FrameData72        Frames:73          - CodeSize:        3174            FrameFunc:       '$T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = '75            LocalSize:       076            MaxStackSize:    077            ParamsSize:      878            PrologSize:      679            RvaStart:        080            SavedRegsSize:   081          - CodeSize:        3082            FrameFunc:       '$T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = '83            LocalSize:       084            MaxStackSize:    085            ParamsSize:      886            PrologSize:      587            RvaStart:        188            SavedRegsSize:   489          - CodeSize:        2890            FrameFunc:       '$T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = '91            LocalSize:       092            MaxStackSize:    093            ParamsSize:      894            PrologSize:      395            RvaStart:        396            SavedRegsSize:   497      - !Symbols98        Records:99          - Kind:            S_GPROC32_ID100            ProcSym:101              CodeSize:        31102              DbgStart:        0103              DbgEnd:          0104              FunctionType:    4098105              Flags:           [  ]106              DisplayName:     func107          - Kind:            S_LOCAL108            LocalSym:109              Type:            116110              Flags:           [ IsParameter ]111              VarName:         x112          - Kind:            S_DEFRANGE_REGISTER_REL113            DefRangeRegisterRelSym:114              Register:        22115              Flags:           0116              BasePointerOffset: 8117              Range:118                OffsetStart:     12119                ISectStart:      0120                Range:           19121              Gaps:122          - Kind:            S_LOCAL123            LocalSym:124              Type:            116125              Flags:           [ IsParameter ]126              VarName:         y127          - Kind:            S_DEFRANGE_REGISTER_REL128            DefRangeRegisterRelSym:129              Register:        22130              Flags:           0131              BasePointerOffset: 12132              Range:133                OffsetStart:     12134                ISectStart:      0135                Range:           19136              Gaps:137          - Kind:            S_PROC_ID_END138            ScopeEndSym:139      - !Lines140        CodeSize:        31141        Flags:           [  ]142        RelocOffset:     0143        RelocSegment:    0144        Blocks:145          - FileName:        'D:\src\llvmbuild\cl\Debug\x64\pdb-framedata.cpp'146            Lines:147              - Offset:          0148                LineStart:       3149                IsStatement:     false150                EndDelta:        0151              - Offset:          12152                LineStart:       4153                IsStatement:     false154                EndDelta:        0155            Columns:156      - !FrameData157        Frames:158          - CodeSize:        53159            FrameFunc:       '$T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = '160            LocalSize:       0161            MaxStackSize:    0162            ParamsSize:      8163            PrologSize:      7164            RvaStart:        0165            SavedRegsSize:   0166          - CodeSize:        52167            FrameFunc:       '$T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = '168            LocalSize:       0169            MaxStackSize:    0170            ParamsSize:      8171            PrologSize:      6172            RvaStart:        1173            SavedRegsSize:   4174          - CodeSize:        50175            FrameFunc:       '$T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = '176            LocalSize:       0177            MaxStackSize:    0178            ParamsSize:      8179            PrologSize:      4180            RvaStart:        3181            SavedRegsSize:   4182          - CodeSize:        49183            FrameFunc:       '$T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = $esi $T0 8 - ^ = '184            LocalSize:       0185            MaxStackSize:    0186            ParamsSize:      8187            PrologSize:      3188            RvaStart:        4189            SavedRegsSize:   8190      - !Symbols191        Records:192          - Kind:            S_GPROC32_ID193            ProcSym:194              CodeSize:        53195              DbgStart:        0196              DbgEnd:          0197              FunctionType:    4102198              Flags:           [  ]199              DisplayName:     main200          - Kind:            S_LOCAL201            LocalSym:202              Type:            116203              Flags:           [ IsParameter ]204              VarName:         argc205          - Kind:            S_DEFRANGE_REGISTER_REL206            DefRangeRegisterRelSym:207              Register:        22208              Flags:           0209              BasePointerOffset: 8210              Range:211                OffsetStart:     52212                ISectStart:      0213                Range:           33214              Gaps:215          - Kind:            S_LOCAL216            LocalSym:217              Type:            4099218              Flags:           [ IsParameter ]219              VarName:         argv220          - Kind:            S_DEFRANGE_REGISTER_REL221            DefRangeRegisterRelSym:222              Register:        22223              Flags:           0224              BasePointerOffset: 12225              Range:226                OffsetStart:     52227                ISectStart:      0228                Range:           33229              Gaps:230          - Kind:            S_PROC_ID_END231            ScopeEndSym:232      - !Lines233        CodeSize:        53234        Flags:           [  ]235        RelocOffset:     0236        RelocSegment:    0237        Blocks:238          - FileName:        'D:\src\llvmbuild\cl\Debug\x64\pdb-framedata.cpp'239            Lines:240              - Offset:          0241                LineStart:       7242                IsStatement:     false243                EndDelta:        0244              - Offset:          20245                LineStart:       8246                IsStatement:     false247                EndDelta:        0248            Columns:249      - !FileChecksums250        Checksums:251          - FileName:        'D:\src\llvmbuild\cl\Debug\x64\pdb-framedata.cpp'252            Kind:            MD5253            Checksum:        A611B73E19B77B02646FAAF7CAEB025D254      - !StringTable255        Strings:256          - 'D:\src\llvmbuild\cl\Debug\x64\pdb-framedata.cpp'257          - '$T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = '258          - '$T0 .raSearch = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = '259          - '$T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = '260          - '$T0 $ebp 4 + = $eip $T0 ^ = $esp $T0 4 + = $ebp $T0 4 - ^ = $esi $T0 8 - ^ = '261          - ''262    Relocations:263      - VirtualAddress:  68264        SymbolName:      '?func@@YAHHH@Z'265        Type:            IMAGE_REL_I386_DIR32NB266      - VirtualAddress:  208267        SymbolName:      '?func@@YAHHH@Z'268        Type:            IMAGE_REL_I386_SECREL269      - VirtualAddress:  212270        SymbolName:      '?func@@YAHHH@Z'271        Type:            IMAGE_REL_I386_SECTION272      - VirtualAddress:  244273        SymbolName:      .text274        Type:            IMAGE_REL_I386_SECREL275      - VirtualAddress:  248276        SymbolName:      .text277        Type:            IMAGE_REL_I386_SECTION278      - VirtualAddress:  276279        SymbolName:      .text280        Type:            IMAGE_REL_I386_SECREL281      - VirtualAddress:  280282        SymbolName:      .text283        Type:            IMAGE_REL_I386_SECTION284      - VirtualAddress:  296285        SymbolName:      '?func@@YAHHH@Z'286        Type:            IMAGE_REL_I386_SECREL287      - VirtualAddress:  300288        SymbolName:      '?func@@YAHHH@Z'289        Type:            IMAGE_REL_I386_SECTION290      - VirtualAddress:  344291        SymbolName:      _main292        Type:            IMAGE_REL_I386_DIR32NB293      - VirtualAddress:  516294        SymbolName:      _main295        Type:            IMAGE_REL_I386_SECREL296      - VirtualAddress:  520297        SymbolName:      _main298        Type:            IMAGE_REL_I386_SECTION299      - VirtualAddress:  555300        SymbolName:      .text301        Type:            IMAGE_REL_I386_SECREL302      - VirtualAddress:  559303        SymbolName:      .text304        Type:            IMAGE_REL_I386_SECTION305      - VirtualAddress:  590306        SymbolName:      .text307        Type:            IMAGE_REL_I386_SECREL308      - VirtualAddress:  594309        SymbolName:      .text310        Type:            IMAGE_REL_I386_SECTION311      - VirtualAddress:  612312        SymbolName:      _main313        Type:            IMAGE_REL_I386_SECREL314      - VirtualAddress:  616315        SymbolName:      _main316        Type:            IMAGE_REL_I386_SECTION317  - Name:            '.debug$T'318    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ]319    Alignment:       4320    Types:321      - Kind:            LF_ARGLIST322        ArgList:323          ArgIndices:      [ 116, 116 ]324      - Kind:            LF_PROCEDURE325        Procedure:326          ReturnType:      116327          CallConv:        NearC328          Options:         [ None ]329          ParameterCount:  2330          ArgumentList:    4096331      - Kind:            LF_FUNC_ID332        FuncId:333          ParentScope:     0334          FunctionType:    4097335          Name:            func336      - Kind:            LF_POINTER337        Pointer:338          ReferentType:    1136339          Attrs:           32778340      - Kind:            LF_ARGLIST341        ArgList:342          ArgIndices:      [ 116, 4099 ]343      - Kind:            LF_PROCEDURE344        Procedure:345          ReturnType:      116346          CallConv:        NearC347          Options:         [ None ]348          ParameterCount:  2349          ArgumentList:    4100350      - Kind:            LF_FUNC_ID351        FuncId:352          ParentScope:     0353          FunctionType:    4101354          Name:            main355  - Name:            .llvm_addrsig356    Characteristics: [ IMAGE_SCN_LNK_REMOVE ]357    Alignment:       1358    SectionData:     0F359symbols:360  - Name:            .text361    Value:           0362    SectionNumber:   1363    SimpleType:      IMAGE_SYM_TYPE_NULL364    ComplexType:     IMAGE_SYM_DTYPE_NULL365    StorageClass:    IMAGE_SYM_CLASS_STATIC366    SectionDefinition:367      Length:          85368      NumberOfRelocations: 1369      NumberOfLinenumbers: 0370      CheckSum:        1989857796371      Number:          1372  - Name:            .data373    Value:           0374    SectionNumber:   2375    SimpleType:      IMAGE_SYM_TYPE_NULL376    ComplexType:     IMAGE_SYM_DTYPE_NULL377    StorageClass:    IMAGE_SYM_CLASS_STATIC378    SectionDefinition:379      Length:          0380      NumberOfRelocations: 0381      NumberOfLinenumbers: 0382      CheckSum:        0383      Number:          2384  - Name:            .bss385    Value:           0386    SectionNumber:   3387    SimpleType:      IMAGE_SYM_TYPE_NULL388    ComplexType:     IMAGE_SYM_DTYPE_NULL389    StorageClass:    IMAGE_SYM_CLASS_STATIC390    SectionDefinition:391      Length:          0392      NumberOfRelocations: 0393      NumberOfLinenumbers: 0394      CheckSum:        0395      Number:          3396  - Name:            .drectve397    Value:           0398    SectionNumber:   4399    SimpleType:      IMAGE_SYM_TYPE_NULL400    ComplexType:     IMAGE_SYM_DTYPE_NULL401    StorageClass:    IMAGE_SYM_CLASS_STATIC402    SectionDefinition:403      Length:          48404      NumberOfRelocations: 0405      NumberOfLinenumbers: 0406      CheckSum:        149686238407      Number:          4408  - Name:            '.debug$S'409    Value:           0410    SectionNumber:   5411    SimpleType:      IMAGE_SYM_TYPE_NULL412    ComplexType:     IMAGE_SYM_DTYPE_NULL413    StorageClass:    IMAGE_SYM_CLASS_STATIC414    SectionDefinition:415      Length:          988416      NumberOfRelocations: 18417      NumberOfLinenumbers: 0418      CheckSum:        2571438511419      Number:          5420  - Name:            '.debug$T'421    Value:           0422    SectionNumber:   6423    SimpleType:      IMAGE_SYM_TYPE_NULL424    ComplexType:     IMAGE_SYM_DTYPE_NULL425    StorageClass:    IMAGE_SYM_CLASS_STATIC426    SectionDefinition:427      Length:          120428      NumberOfRelocations: 0429      NumberOfLinenumbers: 0430      CheckSum:        3148269371431      Number:          6432  - Name:            .llvm_addrsig433    Value:           0434    SectionNumber:   7435    SimpleType:      IMAGE_SYM_TYPE_NULL436    ComplexType:     IMAGE_SYM_DTYPE_NULL437    StorageClass:    IMAGE_SYM_CLASS_STATIC438    SectionDefinition:439      Length:          1440      NumberOfRelocations: 0441      NumberOfLinenumbers: 0442      CheckSum:        2428444049443      Number:          7444  - Name:            '@feat.00'445    Value:           1446    SectionNumber:   -1447    SimpleType:      IMAGE_SYM_TYPE_NULL448    ComplexType:     IMAGE_SYM_DTYPE_NULL449    StorageClass:    IMAGE_SYM_CLASS_STATIC450  - Name:            '?func@@YAHHH@Z'451    Value:           0452    SectionNumber:   1453    SimpleType:      IMAGE_SYM_TYPE_NULL454    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION455    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL456  - Name:            _main457    Value:           32458    SectionNumber:   1459    SimpleType:      IMAGE_SYM_TYPE_NULL460    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION461    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL462...463