| ## Test that reconstructs a dSYM file from YAML and generates a callsite-enabled gsym from it - and then verifies the gsym. |
| ## See llvm/test/tools/llvm-gsymutil/ARM_AArch64/macho-gsym-callsite-info.test for the script to generate this yaml file |
| |
| # RUN: split-file %s %t |
| # RUN: yaml2obj %t/call_sites.dSYM.yaml -o %t/call_sites.dSYM |
| |
| # RUN: llvm-gsymutil --num-threads=1 --convert=%t/call_sites.dSYM --callsites-yaml-file=%t/callsites.yaml -o %t/call_sites_dSYM.gsym |
| |
| # Dump the GSYM file and check the output for callsite information |
| # RUN: llvm-gsymutil %t/call_sites_dSYM.gsym | FileCheck --check-prefix=CHECK-GSYM %s |
| |
| |
| # CHECK-GSYM: FunctionInfo @ 0x[[#%x,FUNC_INFO:]]: [0x[[#%x,FUNC_START:]] - 0x[[#%x,FUNC_END:]]) "func_mainBin_dec_call_everything" |
| # CHECK-GSYM-NEXT: LineTable: |
| # // func_mainBin_dec_call_everything() { |
| # CHECK-GSYM-NEXT: 0x[[#%x,ENTRY:]] {{.*}}/call_sites.cpp:16 |
| # // func_mainBin_dec_01(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_DEC_01_CALL:]] {{.*}}/call_sites.cpp:17 |
| # // func_mainBin_dec_02(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_DEC_02_CALL:]] {{.*}}/call_sites.cpp:18 |
| # // func_mainBin_dec_03(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_DEC_03_CALL:]] {{.*}}/call_sites.cpp:19 |
| # // func_mainBin_inc_01(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_INC_01_CALL:]] {{.*}}/call_sites.cpp:21 |
| # // func_mainBin_inc_02(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_INC_02_CALL:]] {{.*}}/call_sites.cpp:22 |
| # // func_mainBin_inc_03(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_INC_03_CALL:]] {{.*}}/call_sites.cpp:23 |
| # // g_func_ptr(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_FUNC_CALL:]] {{.*}}/call_sites.cpp:25 |
| # // g_extern_func_ptr(); |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_EXTERN_FUNC_CALL:]] {{.*}}/call_sites.cpp:26 |
| # // g_volatile_var = 0; |
| # CHECK-GSYM-NEXT: 0x[[#%x,ADDR_VAR_ASSIGN:]] {{.*}}/call_sites.cpp:28 |
| # // } |
| # CHECK-GSYM-NEXT: 0x[[#%x,]] {{.*}}/call_sites.cpp:29 |
| # CHECK-GSYM-NEXT: CallSites (by relative return offset): |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_DEC_02_CALL,FUNC_START)]] Flags[InternalCall] MatchRegex[func_mainBin_dec_01] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_DEC_03_CALL,FUNC_START)]] Flags[InternalCall] MatchRegex[func_mainBin_dec_02] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_INC_01_CALL,FUNC_START)]] Flags[InternalCall] MatchRegex[func_mainBin_dec_03] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_INC_02_CALL,FUNC_START)]] Flags[InternalCall] MatchRegex[func_mainBin_inc_01] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_INC_03_CALL,FUNC_START)]] Flags[InternalCall] MatchRegex[func_mainBin_inc_02] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_FUNC_CALL,FUNC_START)]] Flags[InternalCall] MatchRegex[func_mainBin_inc_03] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_EXTERN_FUNC_CALL,FUNC_START)]] Flags[None] MatchRegex[.*func.*] |
| # CHECK-GSYM-NEXT: 0x[[#%.4x,sub(ADDR_VAR_ASSIGN,FUNC_START)]] Flags[ExternalCall] MatchRegex[.*extern_func.*] |
| |
| |
| #--- callsites.yaml |
| functions: |
| - name: func_mainBin_dec_call_everything |
| callsites: |
| - return_offset: 0x0C |
| match_regex: ["func_mainBin_dec_01"] |
| flags: |
| - "InternalCall" |
| - return_offset: 0x10 |
| match_regex: ["func_mainBin_dec_02"] |
| flags: |
| - "InternalCall" |
| - return_offset: 0x14 |
| match_regex: ["func_mainBin_dec_03"] |
| flags: |
| - "InternalCall" |
| - return_offset: 24 |
| match_regex: ["func_mainBin_inc_01"] |
| flags: |
| - "InternalCall" |
| - return_offset: 28 |
| match_regex: ["func_mainBin_inc_02"] |
| flags: |
| - "InternalCall" |
| - return_offset: 32 |
| match_regex: ["func_mainBin_inc_03"] |
| flags: |
| - "InternalCall" |
| - return_offset: 44 |
| match_regex: [".*func.*"] |
| - return_offset: 56 |
| match_regex: [".*extern_func.*"] |
| flags: |
| - "ExternalCall" |
| |
| |
| #--- call_sites.dSYM.yaml |
| --- !mach-o |
| FileHeader: |
| magic: 0xFEEDFACF |
| cputype: 0x100000C |
| cpusubtype: 0x0 |
| filetype: 0xA |
| ncmds: 8 |
| sizeofcmds: 1392 |
| flags: 0x0 |
| reserved: 0x0 |
| LoadCommands: |
| - cmd: LC_UUID |
| cmdsize: 24 |
| uuid: 4C4C44E9-5555-3144-A1D3-328233D00078 |
| - cmd: LC_BUILD_VERSION |
| cmdsize: 24 |
| platform: 1 |
| minos: 720896 |
| sdk: 720896 |
| ntools: 0 |
| - cmd: LC_SYMTAB |
| cmdsize: 24 |
| symoff: 4096 |
| nsyms: 12 |
| stroff: 4288 |
| strsize: 235 |
| - cmd: LC_SEGMENT_64 |
| cmdsize: 72 |
| segname: __PAGEZERO |
| vmaddr: 0 |
| vmsize: 4294967296 |
| fileoff: 0 |
| filesize: 0 |
| maxprot: 0 |
| initprot: 0 |
| nsects: 0 |
| flags: 0 |
| - cmd: LC_SEGMENT_64 |
| cmdsize: 152 |
| segname: __TEXT |
| vmaddr: 4294967296 |
| vmsize: 16384 |
| fileoff: 0 |
| filesize: 0 |
| maxprot: 5 |
| initprot: 5 |
| nsects: 1 |
| flags: 0 |
| Sections: |
| - sectname: __text |
| segname: __TEXT |
| addr: 0x100000338 |
| size: 216 |
| offset: 0x0 |
| align: 2 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x80000400 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: CFFAEDFE0C000001000000000A000000080000007005000000000000000000001B000000180000004C4C44E955553144A1D3328233D0007832000000180000000100000000000B0000000B00000000000200000018000000001000000C000000C0100000EB00000019000000480000005F5F504147455A45524F00000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000019000000980000005F5F544558540000000000000000000000000000010000000040000000000000 |
| - cmd: LC_SEGMENT_64 |
| cmdsize: 152 |
| segname: __DATA |
| vmaddr: 4294983680 |
| vmsize: 16384 |
| fileoff: 0 |
| filesize: 0 |
| maxprot: 3 |
| initprot: 3 |
| nsects: 1 |
| flags: 0 |
| Sections: |
| - sectname: __common |
| segname: __DATA |
| addr: 0x100004000 |
| size: 24 |
| offset: 0x0 |
| align: 3 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x1 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| - cmd: LC_SEGMENT_64 |
| cmdsize: 72 |
| segname: __LINKEDIT |
| vmaddr: 4295000064 |
| vmsize: 4096 |
| fileoff: 4096 |
| filesize: 427 |
| maxprot: 1 |
| initprot: 1 |
| nsects: 0 |
| flags: 0 |
| - cmd: LC_SEGMENT_64 |
| cmdsize: 872 |
| segname: __DWARF |
| vmaddr: 4295004160 |
| vmsize: 4096 |
| fileoff: 8192 |
| filesize: 1894 |
| maxprot: 7 |
| initprot: 3 |
| nsects: 10 |
| flags: 0 |
| Sections: |
| - sectname: __debug_line |
| segname: __DWARF |
| addr: 0x100009000 |
| size: 150 |
| offset: 0x2000 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| - sectname: __debug_aranges |
| segname: __DWARF |
| addr: 0x100009096 |
| size: 48 |
| offset: 0x2096 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| - sectname: __debug_info |
| segname: __DWARF |
| addr: 0x1000090C6 |
| size: 424 |
| offset: 0x20C6 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| - sectname: __debug_frame |
| segname: __DWARF |
| addr: 0x10000926E |
| size: 232 |
| offset: 0x226E |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: 14000000FFFFFFFF0400080001781E0C1F0000000000000014000000000000003803000001000000140000000000000014000000000000004C03000001000000140000000000000014000000000000006003000001000000140000000000000014000000000000007403000001000000140000000000000014000000000000008803000001000000140000000000000014000000000000009C0300000100000014000000000000001C00000000000000B0030000010000004800000000000000480C1D109E019D021C00000000000000F8030000010000001800000000000000480C1D109E019D02 |
| - sectname: __debug_abbrev |
| segname: __DWARF |
| addr: 0x100009356 |
| size: 171 |
| offset: 0x2356 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| - sectname: __debug_str |
| segname: __DWARF |
| addr: 0x100009401 |
| size: 378 |
| offset: 0x2401 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| - sectname: __apple_namespac |
| segname: __DWARF |
| addr: 0x10000957B |
| size: 36 |
| offset: 0x257B |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: 485341480100000001000000000000000C000000000000000100000001000600FFFFFFFF |
| - sectname: __apple_names |
| segname: __DWARF |
| addr: 0x10000959F |
| size: 340 |
| offset: 0x259F |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: 48534148010000000B0000000B0000000C000000000000000100000001000600FFFFFFFF00000000FFFFFFFFFFFFFFFFFFFFFFFF01000000FFFFFFFF0300000004000000060000000900000073A83B36215E623FACBB81686A7F9A7C1939EE6AC7E03A771A39EE6AC8E03A773856D6801B39EE6AC9E03A77A4000000B4000000C4000000D4000000E4000000F40000000401000014010000240100003401000044010000AC000000010000002E00000000000000CA000000010000007300000000000000BF000000010000004F0000000000000075010000010000008001000000000000DC0000000100000088000000000000001801000001000000C700000000000000F0000000010000009D000000000000002C01000001000000DC00000000000000540100000100000006010000000000000401000001000000B2000000000000004001000001000000F100000000000000 |
| - sectname: __apple_types |
| segname: __DWARF |
| addr: 0x1000096F3 |
| size: 79 |
| offset: 0x26F3 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: 48534148010000000100000001000000180000000000000004000000010006000300050005000B0006000600000000003080880B38000000BB0000000100000048000000240000A4283A0C00000000 |
| - sectname: __apple_objc |
| segname: __DWARF |
| addr: 0x100009742 |
| size: 36 |
| offset: 0x2742 |
| align: 0 |
| reloff: 0x0 |
| nreloc: 0 |
| flags: 0x0 |
| reserved1: 0x0 |
| reserved2: 0x0 |
| reserved3: 0x0 |
| content: 485341480100000001000000000000000C000000000000000100000001000600FFFFFFFF |
| LinkEditData: |
| NameList: |
| - n_strx: 2 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968312 |
| - n_strx: 8 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968120 |
| - n_strx: 29 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968140 |
| - n_strx: 50 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968160 |
| - n_strx: 71 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968180 |
| - n_strx: 92 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968200 |
| - n_strx: 113 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968220 |
| - n_strx: 134 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 0 |
| n_value: 4294968240 |
| - n_strx: 168 |
| n_type: 0xF |
| n_sect: 2 |
| n_desc: 0 |
| n_value: 4294983680 |
| - n_strx: 184 |
| n_type: 0xF |
| n_sect: 2 |
| n_desc: 0 |
| n_value: 4294983688 |
| - n_strx: 196 |
| n_type: 0xF |
| n_sect: 2 |
| n_desc: 0 |
| n_value: 4294983696 |
| - n_strx: 215 |
| n_type: 0xF |
| n_sect: 1 |
| n_desc: 16 |
| n_value: 4294967296 |
| StringTable: |
| - '' |
| - '' |
| - _main |
| - _func_mainBin_dec_01 |
| - _func_mainBin_dec_02 |
| - _func_mainBin_dec_03 |
| - _func_mainBin_inc_01 |
| - _func_mainBin_inc_02 |
| - _func_mainBin_inc_03 |
| - _func_mainBin_dec_call_everything |
| - _g_volatile_var |
| - _g_func_ptr |
| - _g_extern_func_ptr |
| - __mh_execute_header |
| DWARF: |
| debug_str: |
| - '' |
| - 'clang version 20.0.0git (https://github.com/alx32/llvm-project.git f41f6ea1f33c4f5e7c94f3d155e44292d1809c50)' |
| - call_sites.cpp |
| - '/' |
| - '/tmp/___________________________________/tst' |
| - g_volatile_var |
| - int |
| - g_func_ptr |
| - g_extern_func_ptr |
| - func_mainBin_dec_01 |
| - func_mainBin_dec_02 |
| - func_mainBin_dec_03 |
| - func_mainBin_inc_01 |
| - func_mainBin_inc_02 |
| - func_mainBin_inc_03 |
| - func_mainBin_dec_call_everything |
| - main |
| debug_abbrev: |
| - ID: 0 |
| Table: |
| - Code: 0x1 |
| Tag: DW_TAG_compile_unit |
| Children: DW_CHILDREN_yes |
| Attributes: |
| - Attribute: DW_AT_producer |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_language |
| Form: DW_FORM_data2 |
| - Attribute: DW_AT_name |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_LLVM_sysroot |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_stmt_list |
| Form: DW_FORM_sec_offset |
| - Attribute: DW_AT_comp_dir |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_APPLE_optimized |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_low_pc |
| Form: DW_FORM_addr |
| - Attribute: DW_AT_high_pc |
| Form: DW_FORM_data4 |
| - Code: 0x2 |
| Tag: DW_TAG_variable |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_name |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_type |
| Form: DW_FORM_ref_addr |
| - Attribute: DW_AT_external |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_decl_file |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_decl_line |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_location |
| Form: DW_FORM_exprloc |
| - Code: 0x3 |
| Tag: DW_TAG_volatile_type |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_type |
| Form: DW_FORM_ref_addr |
| - Code: 0x4 |
| Tag: DW_TAG_base_type |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_name |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_encoding |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_byte_size |
| Form: DW_FORM_data1 |
| - Code: 0x5 |
| Tag: DW_TAG_pointer_type |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_type |
| Form: DW_FORM_ref_addr |
| - Code: 0x6 |
| Tag: DW_TAG_subroutine_type |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_type |
| Form: DW_FORM_ref_addr |
| - Code: 0x7 |
| Tag: DW_TAG_subprogram |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_low_pc |
| Form: DW_FORM_addr |
| - Attribute: DW_AT_high_pc |
| Form: DW_FORM_data4 |
| - Attribute: DW_AT_APPLE_omit_frame_ptr |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_frame_base |
| Form: DW_FORM_exprloc |
| - Attribute: DW_AT_call_all_calls |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_name |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_decl_file |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_decl_line |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_external |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_APPLE_optimized |
| Form: DW_FORM_flag_present |
| - Code: 0x8 |
| Tag: DW_TAG_subprogram |
| Children: DW_CHILDREN_yes |
| Attributes: |
| - Attribute: DW_AT_low_pc |
| Form: DW_FORM_addr |
| - Attribute: DW_AT_high_pc |
| Form: DW_FORM_data4 |
| - Attribute: DW_AT_frame_base |
| Form: DW_FORM_exprloc |
| - Attribute: DW_AT_call_all_calls |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_name |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_decl_file |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_decl_line |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_external |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_APPLE_optimized |
| Form: DW_FORM_flag_present |
| - Code: 0x9 |
| Tag: DW_TAG_call_site |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_call_origin |
| Form: DW_FORM_ref4 |
| - Attribute: DW_AT_call_return_pc |
| Form: DW_FORM_addr |
| - Code: 0xA |
| Tag: DW_TAG_call_site |
| Children: DW_CHILDREN_no |
| Attributes: |
| - Attribute: DW_AT_call_target |
| Form: DW_FORM_exprloc |
| - Attribute: DW_AT_call_return_pc |
| Form: DW_FORM_addr |
| - Code: 0xB |
| Tag: DW_TAG_subprogram |
| Children: DW_CHILDREN_yes |
| Attributes: |
| - Attribute: DW_AT_low_pc |
| Form: DW_FORM_addr |
| - Attribute: DW_AT_high_pc |
| Form: DW_FORM_data4 |
| - Attribute: DW_AT_frame_base |
| Form: DW_FORM_exprloc |
| - Attribute: DW_AT_call_all_calls |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_name |
| Form: DW_FORM_strp |
| - Attribute: DW_AT_decl_file |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_decl_line |
| Form: DW_FORM_data1 |
| - Attribute: DW_AT_type |
| Form: DW_FORM_ref_addr |
| - Attribute: DW_AT_external |
| Form: DW_FORM_flag_present |
| - Attribute: DW_AT_APPLE_optimized |
| Form: DW_FORM_flag_present |
| debug_aranges: |
| - Length: 0x2C |
| Version: 2 |
| CuOffset: 0x0 |
| AddressSize: 0x8 |
| Descriptors: |
| - Address: 0x100000338 |
| Length: 0xD8 |
| debug_info: |
| - Length: 0x1A4 |
| Version: 4 |
| AbbrevTableID: 0 |
| AbbrOffset: 0x0 |
| AddrSize: 8 |
| Entries: |
| - AbbrCode: 0x1 |
| Values: |
| - Value: 0x1 |
| - Value: 0x21 |
| - Value: 0x6E |
| - Value: 0x7D |
| - Value: 0x0 |
| - Value: 0x7F |
| - Value: 0x1 |
| - Value: 0x100000338 |
| - Value: 0xD8 |
| - AbbrCode: 0x2 |
| Values: |
| - Value: 0xAC |
| - Value: 0x43 |
| - Value: 0x1 |
| - Value: 0x1 |
| - Value: 0x4 |
| - Value: 0x9 |
| BlockData: [ 0x3, 0x0, 0x40, 0x0, 0x0, 0x1, 0x0, 0x0, |
| 0x0 ] |
| - AbbrCode: 0x3 |
| Values: |
| - Value: 0x48 |
| - AbbrCode: 0x4 |
| Values: |
| - Value: 0xBB |
| - Value: 0x5 |
| - Value: 0x4 |
| - AbbrCode: 0x2 |
| Values: |
| - Value: 0xBF |
| - Value: 0x64 |
| - Value: 0x1 |
| - Value: 0x1 |
| - Value: 0x5 |
| - Value: 0x9 |
| BlockData: [ 0x3, 0x8, 0x40, 0x0, 0x0, 0x1, 0x0, 0x0, |
| 0x0 ] |
| - AbbrCode: 0x3 |
| Values: |
| - Value: 0x69 |
| - AbbrCode: 0x5 |
| Values: |
| - Value: 0x6E |
| - AbbrCode: 0x6 |
| Values: |
| - Value: 0x48 |
| - AbbrCode: 0x2 |
| Values: |
| - Value: 0xCA |
| - Value: 0x64 |
| - Value: 0x1 |
| - Value: 0x1 |
| - Value: 0x6 |
| - Value: 0x9 |
| BlockData: [ 0x3, 0x10, 0x40, 0x0, 0x0, 0x1, 0x0, 0x0, |
| 0x0 ] |
| - AbbrCode: 0x7 |
| Values: |
| - Value: 0x100000338 |
| - Value: 0x14 |
| - Value: 0x1 |
| - Value: 0x1 |
| BlockData: [ 0x6F ] |
| - Value: 0x1 |
| - Value: 0xDC |
| - Value: 0x1 |
| - Value: 0x8 |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x7 |
| Values: |
| - Value: 0x10000034C |
| - Value: 0x14 |
| - Value: 0x1 |
| - Value: 0x1 |
| BlockData: [ 0x6F ] |
| - Value: 0x1 |
| - Value: 0xF0 |
| - Value: 0x1 |
| - Value: 0x9 |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x7 |
| Values: |
| - Value: 0x100000360 |
| - Value: 0x14 |
| - Value: 0x1 |
| - Value: 0x1 |
| BlockData: [ 0x6F ] |
| - Value: 0x1 |
| - Value: 0x104 |
| - Value: 0x1 |
| - Value: 0xA |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x7 |
| Values: |
| - Value: 0x100000374 |
| - Value: 0x14 |
| - Value: 0x1 |
| - Value: 0x1 |
| BlockData: [ 0x6F ] |
| - Value: 0x1 |
| - Value: 0x118 |
| - Value: 0x1 |
| - Value: 0xC |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x7 |
| Values: |
| - Value: 0x100000388 |
| - Value: 0x14 |
| - Value: 0x1 |
| - Value: 0x1 |
| BlockData: [ 0x6F ] |
| - Value: 0x1 |
| - Value: 0x12C |
| - Value: 0x1 |
| - Value: 0xD |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x7 |
| Values: |
| - Value: 0x10000039C |
| - Value: 0x14 |
| - Value: 0x1 |
| - Value: 0x1 |
| BlockData: [ 0x6F ] |
| - Value: 0x1 |
| - Value: 0x140 |
| - Value: 0x1 |
| - Value: 0xE |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x8 |
| Values: |
| - Value: 0x1000003B0 |
| - Value: 0x48 |
| - Value: 0x1 |
| BlockData: [ 0x6D ] |
| - Value: 0x1 |
| - Value: 0x154 |
| - Value: 0x1 |
| - Value: 0x10 |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0x88 |
| - Value: 0x1000003BC |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0x9D |
| - Value: 0x1000003C0 |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0xB2 |
| - Value: 0x1000003C4 |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0xC7 |
| - Value: 0x1000003C8 |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0xDC |
| - Value: 0x1000003CC |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0xF1 |
| - Value: 0x1000003D0 |
| - AbbrCode: 0xA |
| Values: |
| - Value: 0x1 |
| BlockData: [ 0x58 ] |
| - Value: 0x1000003DC |
| - AbbrCode: 0xA |
| Values: |
| - Value: 0x1 |
| BlockData: [ 0x58 ] |
| - Value: 0x1000003E8 |
| - AbbrCode: 0x0 |
| - AbbrCode: 0xB |
| Values: |
| - Value: 0x1000003F8 |
| - Value: 0x18 |
| - Value: 0x1 |
| BlockData: [ 0x6D ] |
| - Value: 0x1 |
| - Value: 0x175 |
| - Value: 0x1 |
| - Value: 0x1F |
| - Value: 0x48 |
| - Value: 0x1 |
| - Value: 0x1 |
| - AbbrCode: 0x9 |
| Values: |
| - Value: 0x106 |
| - Value: 0x100000404 |
| - AbbrCode: 0x0 |
| - AbbrCode: 0x0 |
| debug_line: |
| - Length: 146 |
| Version: 4 |
| PrologueLength: 38 |
| MinInstLength: 1 |
| MaxOpsPerInst: 1 |
| DefaultIsStmt: 1 |
| LineBase: 251 |
| LineRange: 14 |
| OpcodeBase: 13 |
| StandardOpcodeLengths: [ 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1 ] |
| Files: |
| - Name: call_sites.cpp |
| DirIdx: 0 |
| ModTime: 0 |
| Length: 0 |
| Opcodes: |
| - Opcode: DW_LNS_extended_op |
| ExtLen: 9 |
| SubOpcode: DW_LNE_set_address |
| Data: 4294968120 |
| - Opcode: DW_LNS_set_column |
| Data: 54 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x19 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 58 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0xF2 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 54 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 58 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0xF2 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 54 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 58 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0xF2 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 54 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x4C |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 58 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0xF2 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 54 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 58 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0xF2 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 54 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 58 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0xF2 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 0 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: 0x4C |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 5 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x83 |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: 0x4C |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: 0x4C |
| Data: 0 |
| - Opcode: 0xBB |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 20 |
| - Opcode: 0xBC |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 1 |
| - Opcode: DW_LNS_set_epilogue_begin |
| Data: 0 |
| - Opcode: 0x83 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 0 |
| - Opcode: 0x84 |
| Data: 0 |
| - Opcode: DW_LNS_set_column |
| Data: 3 |
| - Opcode: DW_LNS_set_prologue_end |
| Data: 0 |
| - Opcode: 0x83 |
| Data: 0 |
| - Opcode: 0x4B |
| Data: 0 |
| - Opcode: DW_LNS_negate_stmt |
| Data: 0 |
| - Opcode: DW_LNS_set_epilogue_begin |
| Data: 0 |
| - Opcode: 0x4A |
| Data: 0 |
| - Opcode: DW_LNS_advance_pc |
| Data: 8 |
| - Opcode: DW_LNS_extended_op |
| ExtLen: 1 |
| SubOpcode: DW_LNE_end_sequence |
| Data: 0 |
| ... |