CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
1653 lines
62 KiB
YAML
1653 lines
62 KiB
YAML
## Test that reconstructs a dSYM file from YAML and generates a gsym from it. The gsym has callsite info and merged functions.
|
|
|
|
# TODO: Add line numbers instead of ':{{.}}' below - after introducing accurate DIE-based lookups: https://github.com/llvm/llvm-project/pull/123391
|
|
|
|
# RUN: split-file %s %t
|
|
# RUN: yaml2obj %t/merged_callsites.dSYM.yaml -o %t/merged_callsites.dSYM
|
|
# The object file is manually tampered with such that the LLVM_stmt_seq of function_bad_stmt_seq is 0xFFFFFFFF.
|
|
|
|
# RUN: llvm-gsymutil --num-threads=1 --convert=%t/merged_callsites.dSYM --merged-functions --callsites-yaml-file=%t/callsites.yaml -o %t/call_sites_dSYM.gsym
|
|
# RUN: llvm-gsymutil --num-threads=1 --convert=%t/merged_callsites.dSYM --merged-functions --dwarf-callsites -o %t/dwarf_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-MERGED-CALLSITES %s
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym | FileCheck --check-prefix=CHECK-MERGED-CALLSITES %s
|
|
|
|
# CHECK-MERGED-CALLSITES: FunctionInfo @ 0x[[#%x,FUNC4_1:]]: [0x[[#%x,FUNC4_1_START:]] - 0x[[#%x,FUNC4_1_END:]]) "function4_copy1"
|
|
# CHECK-MERGED-CALLSITES: ++ Merged FunctionInfos[0]:
|
|
# CHECK-MERGED-CALLSITES-NEXT: [0x[[#%x,FUNC4_2_START:]] - 0x[[#%x,FUNC4_2_END:]]) "function4_copy2"
|
|
|
|
# CHECK-MERGED-CALLSITES: FunctionInfo @ 0x[[#%x,FUNC3_1:]]: [0x[[#%x,FUNC3_1_START:]] - 0x[[#%x,FUNC3_1_END:]]) "function3_copy1"
|
|
# CHECK-MERGED-CALLSITES: CallSites (by relative return offset):
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function4_copy1]
|
|
# CHECK-MERGED-CALLSITES: ++ Merged FunctionInfos[0]:
|
|
# CHECK-MERGED-CALLSITES-NEXT: [0x[[#%x,FUNC3_2_START:]] - 0x[[#%x,FUNC3_2_END:]]) "function3_copy2"
|
|
# CHECK-MERGED-CALLSITES: CallSites (by relative return offset):
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function4_copy2]
|
|
|
|
# CHECK-MERGED-CALLSITES: FunctionInfo @ 0x[[#%x,FUNC2_1:]]: [0x[[#%x,FUNC2_1_START:]] - 0x[[#%x,FUNC2_1_END:]]) "function2_copy1"
|
|
# CHECK-MERGED-CALLSITES: CallSites (by relative return offset):
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function3_copy1]
|
|
# CHECK-MERGED-CALLSITES: ++ Merged FunctionInfos[0]:
|
|
# CHECK-MERGED-CALLSITES-NEXT: [0x[[#%x,FUNC2_2_START:]] - 0x[[#%x,FUNC2_2_END:]]) "function2_copy2"
|
|
# CHECK-MERGED-CALLSITES: CallSites (by relative return offset):
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function3_copy1]
|
|
|
|
# CHECK-MERGED-CALLSITES: FunctionInfo @ 0x[[#%x,FUNC1:]]: [0x[[#%x,FUNC1_START:]] - 0x[[#%x,FUNC1_END:]]) "function1"
|
|
# CHECK-MERGED-CALLSITES: CallSites (by relative return offset):
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function2_copy1]
|
|
|
|
# If we don't do anything, a function with bad LLVM_stmt_seq won't have any call site filter
|
|
# More importantly, the line number will be at the function definition.
|
|
# CHECK-MERGED-CALLSITES: FunctionInfo @ 0x[[#%x,BAD_STMT_SEQ:]]: [0x[[#%x,BAD_STMT_SEQ_START:]] - 0x[[#%x,BAD_STMT_SEQ_END:]]) "function_bad_stmt_seq"
|
|
# CHECK-MERGED-CALLSITES-NEXT: LineTable:
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x00000001000003b0 ./merged_funcs_test.cpp:65
|
|
|
|
# CHECK-MERGED-CALLSITES-NEXT: FunctionInfo @ 0x[[#%x,MAIN:]]: [0x[[#%x,MAIN_START:]] - 0x[[#%x,MAIN_END:]]) "main"
|
|
# CHECK-MERGED-CALLSITES: CallSites (by relative return offset):
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function1]
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function2_copy2]
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function4_copy2]
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function3_copy2]
|
|
# CHECK-MERGED-CALLSITES-NEXT: 0x[[#%.4x,]] Flags[None] MatchRegex[function2_copy1]
|
|
|
|
### Check that we can correctly resove merged functions using callstacks:
|
|
### Resolve two callstacks containing merged functions.
|
|
### We use the value obtained from `CallSites:[FILTER]` to pass to the next call to `llvm-gsymutil` via `--merged-functions-filter`.
|
|
### The callstacks resolve differently based on the merged functions filter.
|
|
### 0x00000001000003d8 => 0x000000010000037c => 0x000000010000035c => 0x0000000100000340
|
|
### 0x00000001000003f0 =========================> 0x000000010000035c => 0x0000000100000340
|
|
###
|
|
### We added a new function, for main function, +8 for line numbers, +0x8 for addresses.
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --merged-functions --address=0x00000001000003d8 | FileCheck --check-prefix=CHECK-C1 %s
|
|
# CHECK-C1: 0x00000001000003d8: main + 32 @ ./merged_funcs_test.cpp:71
|
|
# CHECK-C1-NEXT: CallSites: function2_copy2
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --merged-functions --address=0x000000010000037c --merged-functions-filter="function2_copy2" | FileCheck --check-prefix=CHECK-C2 %s
|
|
# CHECK-C2: 0x000000010000037c: function_inlined + 8 @ ./merged_funcs_test.cpp:35 [inlined]
|
|
# CHECK-C2-NEXT: function2_copy2 + 16 @ ./merged_funcs_test.cpp:48
|
|
# CHECK-C2-NEXT: CallSites: function3_copy1
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --merged-functions --address=0x000000010000035c --merged-functions-filter="function3_copy1" | FileCheck --check-prefix=CHECK-C3 %s
|
|
# CHECK-C3: Found 1 function at address 0x000000010000035c:
|
|
# CHECK-C3-NEXT: 0x000000010000035c: function3_copy1 + 16 @ ./merged_funcs_test.cpp:21
|
|
# CHECK-C3-NEXT: CallSites: function4_copy1
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --merged-functions --address=0x0000000100000340 --merged-functions-filter="function4_copy1" | FileCheck --check-prefix=CHECK-C4 %s
|
|
# CHECK-C4: Found 1 function at address 0x0000000100000340:
|
|
# CHECK-C4-NEXT: 0x0000000100000340: function4_copy1 + 8 @ ./merged_funcs_test.cpp:7
|
|
|
|
### ----------------------------------------------------------------------------------------------------------------------------------
|
|
### Resolve the 2nd call stack - the 2nd and 3rd addresses are the same but they resolve to a different function because of the filter
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --address=0x00000001000003f0 --merged-functions | FileCheck --check-prefix=CHECK-C5 %s
|
|
# CHECK-C5: Found 1 function at address 0x00000001000003f0:
|
|
# CHECK-C5-NEXT: 0x00000001000003f0: main + 56 @ ./merged_funcs_test.cpp:72
|
|
# CHECK-C5-NEXT: CallSites: function3_copy2
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --merged-functions --address=0x000000010000035c --merged-functions-filter="function3_copy2" | FileCheck --check-prefix=CHECK-C6 %s
|
|
# CHECK-C6: Found 1 function at address 0x000000010000035c:
|
|
# CHECK-C6-NEXT: 0x000000010000035c: function3_copy2 + 16 @ ./merged_funcs_test.cpp:28
|
|
# CHECK-C6-NEXT: CallSites: function4_copy2
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --merged-functions --merged-functions-filter="function4_copy2" --address=0x0000000100000340 | FileCheck --check-prefix=CHECK-C7 %s
|
|
# CHECK-C7: Found 1 function at address 0x0000000100000340:
|
|
# CHECK-C7-NEXT: 0x0000000100000340: function4_copy2 + 8 @ ./merged_funcs_test.cpp:14
|
|
|
|
# RUN: llvm-gsymutil %t/dwarf_call_sites_dSYM.gsym --address=0x00000001000003b4 --merged-functions | FileCheck --check-prefix=CHECK-BAD %s
|
|
# CHECK-BAD: Found 1 function at address 0x00000001000003b4:
|
|
# CHECK-BAD-NEXT: 0x00000001000003b4: function_bad_stmt_seq + 4 @ ./merged_funcs_test.cpp:65
|
|
|
|
#--- merged_funcs_test.cpp
|
|
#define ATTRIB extern "C" __attribute__((noinline))
|
|
volatile int global_result = 0;
|
|
|
|
ATTRIB int function4_copy1(int a) {
|
|
int b = a * 4;
|
|
int result = b + 4;
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
ATTRIB int function4_copy2(int a) {
|
|
int b = a * 4;
|
|
int result = b + 4;
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
ATTRIB int function3_copy1(int a) {
|
|
int b = a + 3;
|
|
int result = function4_copy1(b);
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
ATTRIB int function3_copy2(int a) {
|
|
int b = a + 3;
|
|
int result = function4_copy2(b);
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
extern "C" inline int function_inlined(int a) {
|
|
int b = a + 3;
|
|
int result = function3_copy1(b);
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
ATTRIB int function2_copy1(int a) {
|
|
int b = a - 2;
|
|
int result = function_inlined(b);
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
ATTRIB int function2_copy2(int a) {
|
|
int b = a - 2;
|
|
int result = function_inlined(b);
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
ATTRIB int function1(int a) {
|
|
int b = a + 1;
|
|
int result = function2_copy1(b);
|
|
global_result = result;
|
|
return result;
|
|
}
|
|
|
|
// Intentional multi-line function definition
|
|
ATTRIB
|
|
int function_bad_stmt_seq(
|
|
int a
|
|
) {
|
|
return a + 1;
|
|
}
|
|
|
|
int main() {
|
|
int sum = 0;
|
|
sum += function1(1);
|
|
sum += function2_copy2(3);
|
|
sum += function4_copy2(4);
|
|
sum += function3_copy2(41);
|
|
sum += function2_copy1(11);
|
|
sum += function_bad_stmt_seq(sum);
|
|
return sum;
|
|
}
|
|
|
|
#--- callsites.yaml
|
|
functions:
|
|
- name: function3_copy1
|
|
callsites:
|
|
- return_offset: 0x10
|
|
match_regex: ["function4_copy1"]
|
|
- name: function3_copy2
|
|
callsites:
|
|
- return_offset: 0x10
|
|
match_regex: ["function4_copy2"]
|
|
- name: function2_copy1
|
|
callsites:
|
|
- return_offset: 0x10
|
|
match_regex: ["function3_copy1"]
|
|
- name: function2_copy2
|
|
callsites:
|
|
- return_offset: 0x10
|
|
match_regex: ["function3_copy1"]
|
|
- name: function1
|
|
callsites:
|
|
- return_offset: 0x10
|
|
match_regex: ["function2_copy1"]
|
|
- name: main
|
|
callsites:
|
|
- return_offset: 0x14
|
|
match_regex: ["function1"]
|
|
- return_offset: 0x20
|
|
match_regex: ["function2_copy2"]
|
|
- return_offset: 0x2c
|
|
match_regex: ["function4_copy2"]
|
|
- return_offset: 0x38
|
|
match_regex: ["function3_copy2"]
|
|
- return_offset: 0x48
|
|
match_regex: ["function2_copy1"]
|
|
|
|
#--- gen
|
|
# Compile merged_funcs_test.cpp to merged_funcs_test.o with flags -g -O3 for MachO / arm64
|
|
clang --target=arm64-apple-macos11 -c -g -gdwarf-4 -fno-unwind-tables \
|
|
-mllvm -emit-func-debug-line-table-offsets -fno-exceptions -mno-outline \
|
|
-fdebug-compilation-dir=. \
|
|
-O3 "merged_funcs_test.cpp" -o "merged_funcs_test.o"
|
|
|
|
# Link using ld64.lld directly with flags "--icf=all --keep-icf-stabs"
|
|
"ld64.lld" \
|
|
-arch arm64 \
|
|
-platform_version macos 11.0.0 11.0.0 \
|
|
-o "merged_funcs_test.exe" \
|
|
"merged_funcs_test.o" \
|
|
-dead_strip \
|
|
--icf=all \
|
|
--keep-icf-stabs
|
|
|
|
# Create merged_funcs_test.dSYM from merged_funcs_test.exe
|
|
"dsymutil" --flat "merged_funcs_test.exe" --verify-dwarf=none -o "merged_funcs_test.dSYM"
|
|
"obj2yaml" "merged_funcs_test.dSYM"
|
|
|
|
|
|
#--- merged_callsites.dSYM.yaml
|
|
--- !mach-o
|
|
FileHeader:
|
|
magic: 0xFEEDFACF
|
|
cputype: 0x100000C
|
|
cpusubtype: 0x0
|
|
filetype: 0xA
|
|
ncmds: 8
|
|
sizeofcmds: 1472
|
|
flags: 0x0
|
|
reserved: 0x0
|
|
LoadCommands:
|
|
- cmd: LC_UUID
|
|
cmdsize: 24
|
|
uuid: 4C4C44C9-5555-3144-A16C-82A90B2087B3
|
|
- cmd: LC_BUILD_VERSION
|
|
cmdsize: 24
|
|
platform: 1
|
|
minos: 720896
|
|
sdk: 720896
|
|
ntools: 0
|
|
- cmd: LC_SYMTAB
|
|
cmdsize: 24
|
|
symoff: 4096
|
|
nsyms: 11
|
|
stroff: 4272
|
|
strsize: 179
|
|
- 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: 228
|
|
offset: 0x0
|
|
align: 2
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x80000400
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
content: CFFAEDFE0C000001000000000A00000008000000C005000000000000000000001B000000180000004C4C44C955553144A16C82A90B2087B332000000180000000100000000000B0000000B00000000000200000018000000001000000B000000B0100000B300000019000000480000005F5F504147455A45524F00000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000019000000980000005F5F544558540000000000000000000000000000010000000040000000000000000000000000000000000000
|
|
- 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: 4
|
|
offset: 0x0
|
|
align: 2
|
|
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: 355
|
|
maxprot: 1
|
|
initprot: 1
|
|
nsects: 0
|
|
flags: 0
|
|
- cmd: LC_SEGMENT_64
|
|
cmdsize: 952
|
|
segname: __DWARF
|
|
vmaddr: 4295004160
|
|
vmsize: 4096
|
|
fileoff: 8192
|
|
filesize: 3884
|
|
maxprot: 7
|
|
initprot: 3
|
|
nsects: 11
|
|
flags: 0
|
|
Sections:
|
|
- sectname: __debug_line
|
|
segname: __DWARF
|
|
addr: 0x100009000
|
|
size: 357
|
|
offset: 0x2000
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
- sectname: __debug_aranges
|
|
segname: __DWARF
|
|
addr: 0x100009165
|
|
size: 48
|
|
offset: 0x2165
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
- sectname: __debug_loc
|
|
segname: __DWARF
|
|
addr: 0x100009195
|
|
size: 1083
|
|
offset: 0x2195
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
content: 00000000000000000800000000000000010050080000000000000014000000000000000400A301509F0000000000000000000000000000000004000000000000000C0000000000000001005800000000000000000000000000000000080000000000000014000000000000000100500000000000000000000000000000000000000000000000000800000000000000010050080000000000000014000000000000000400A301509F0000000000000000000000000000000004000000000000000C0000000000000001005800000000000000000000000000000000080000000000000014000000000000000100500000000000000000000000000000000014000000000000002000000000000000010050200000000000000034000000000000000400A301509F00000000000000000000000000000000240000000000000034000000000000000100500000000000000000000000000000000014000000000000002000000000000000010050200000000000000034000000000000000400A301509F00000000000000000000000000000000240000000000000034000000000000000100500000000000000000000000000000000034000000000000004000000000000000010050400000000000000058000000000000000400A301509F000000000000000000000000000000003C0000000000000040000000000000000300707E9F000000000000000000000000000000004400000000000000580000000000000001005000000000000000000000000000000000340000000000000040000000000000000300707E9F00000000000000000000000000000000440000000000000058000000000000000100500000000000000000000000000000000034000000000000004000000000000000010050400000000000000058000000000000000400A301509F000000000000000000000000000000003C0000000000000040000000000000000300707E9F000000000000000000000000000000004400000000000000580000000000000001005000000000000000000000000000000000340000000000000040000000000000000300707E9F00000000000000000000000000000000440000000000000058000000000000000100500000000000000000000000000000000058000000000000006400000000000000010050640000000000000078000000000000000400A301509F00000000000000000000000000000000680000000000000078000000000000000100500000000000000000000000000000000078000000000000007C000000000000000100507C0000000000000080000000000000000400A301509F000000000000000000000000000000008C000000000000009800000000000000030011009F9800000000000000A400000000000000010063A400000000000000B000000000000000010064C000000000000000D40000000000000001006300000000000000000000000000000000
|
|
- sectname: __debug_info
|
|
segname: __DWARF
|
|
addr: 0x1000095D0
|
|
size: 988
|
|
offset: 0x25D0
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
- sectname: __debug_frame
|
|
segname: __DWARF
|
|
addr: 0x1000099AC
|
|
size: 296
|
|
offset: 0x29AC
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
content: 14000000FFFFFFFF0400080001781E0C1F000000000000001400000000000000380300000100000014000000000000001400000000000000380300000100000014000000000000001C000000000000004C030000010000002000000000000000480C1D109E019D021C000000000000004C030000010000002000000000000000480C1D109E019D021C000000000000006C030000010000002400000000000000480C1D109E019D021C000000000000006C030000010000002400000000000000480C1D109E019D021C0000000000000090030000010000002000000000000000480C1D109E019D021400000000000000B00300000100000008000000000000002400000000000000B80300000100000064000000000000004C0C1D109E019D029303940400000000
|
|
- sectname: __debug_abbrev
|
|
segname: __DWARF
|
|
addr: 0x100009AD4
|
|
size: 260
|
|
offset: 0x2AD4
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
- sectname: __debug_str
|
|
segname: __DWARF
|
|
addr: 0x100009BD8
|
|
size: 357
|
|
offset: 0x2BD8
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
- sectname: __apple_namespac
|
|
segname: __DWARF
|
|
addr: 0x100009D3D
|
|
size: 36
|
|
offset: 0x2D3D
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
content: 485341480100000001000000000000000C000000000000000100000001000600FFFFFFFF
|
|
- sectname: __apple_names
|
|
segname: __DWARF
|
|
addr: 0x100009D61
|
|
size: 344
|
|
offset: 0x2D61
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
content: 48534148010000000B0000000B0000000C0000000000000001000000010006000000000002000000FFFFFFFFFFFFFFFF03000000FFFFFFFFFFFFFFFF04000000080000000A000000FFFFFFFFAD7ED75888CB36CF89CB36CFF4B03BD34908311CDC41AB580A452B696A7F9A7C4A08311C0B452B69404C8F68A4000000B8000000C8000000D8000000E8000000F800000008010000180100002801000038010000480100000B010000020000000502000084020000000000001C01000001000000BB010000000000002C010000010000003A02000000000000AE000000010000002E00000000000000EB00000001000000E5000000000000003C01000001000000B902000000000000C0000000010000004F000000000000005C010000010000003A03000000000000FB000000010000003901000000000000DB000000010000009A0000000000000046010000010000000D03000000000000
|
|
- sectname: __apple_types
|
|
segname: __DWARF
|
|
addr: 0x100009EB9
|
|
size: 79
|
|
offset: 0x2EB9
|
|
align: 0
|
|
reloff: 0x0
|
|
nreloc: 0
|
|
flags: 0x0
|
|
reserved1: 0x0
|
|
reserved2: 0x0
|
|
reserved3: 0x0
|
|
content: 48534148010000000100000001000000180000000000000004000000010006000300050005000B0006000600000000003080880B38000000BC0000000100000048000000240000A4283A0C00000000
|
|
- sectname: __apple_objc
|
|
segname: __DWARF
|
|
addr: 0x100009F08
|
|
size: 36
|
|
offset: 0x2F08
|
|
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: 4294968248
|
|
- n_strx: 8
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968120
|
|
- n_strx: 25
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968120
|
|
- n_strx: 42
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968140
|
|
- n_strx: 59
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968140
|
|
- n_strx: 76
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968172
|
|
- n_strx: 93
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968172
|
|
- n_strx: 110
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968208
|
|
- n_strx: 121
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 0
|
|
n_value: 4294968240
|
|
- n_strx: 144
|
|
n_type: 0xF
|
|
n_sect: 2
|
|
n_desc: 0
|
|
n_value: 4294983680
|
|
- n_strx: 159
|
|
n_type: 0xF
|
|
n_sect: 1
|
|
n_desc: 16
|
|
n_value: 4294967296
|
|
StringTable:
|
|
- ''
|
|
- ''
|
|
- _main
|
|
- _function4_copy1
|
|
- _function4_copy2
|
|
- _function3_copy1
|
|
- _function3_copy2
|
|
- _function2_copy1
|
|
- _function2_copy2
|
|
- _function1
|
|
- _function_bad_stmt_seq
|
|
- _global_result
|
|
- __mh_execute_header
|
|
DWARF:
|
|
debug_str:
|
|
- ''
|
|
- 'Facebook clang version 15.82.1 (https://git.internal.tfbnw.net/repos/git/ro/osmeta/external/llvm-project 3c2ff7d3c6ef63fb9a83574cee1b376c969bd5ec)'
|
|
- merged_funcs_test.cpp
|
|
- '/'
|
|
- .
|
|
- global_result
|
|
- int
|
|
- function4_copy1
|
|
- a
|
|
- b
|
|
- result
|
|
- function4_copy2
|
|
- function3_copy1
|
|
- function3_copy2
|
|
- function_inlined
|
|
- function2_copy1
|
|
- function2_copy2
|
|
- function1
|
|
- function_bad_stmt_seq
|
|
- main
|
|
- sum
|
|
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_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_APPLE_omit_frame_ptr
|
|
Form: DW_FORM_flag_present
|
|
- Attribute: DW_AT_LLVM_stmt_sequence
|
|
Form: DW_FORM_sec_offset
|
|
- 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
|
|
- Code: 0x6
|
|
Tag: DW_TAG_formal_parameter
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_location
|
|
Form: DW_FORM_sec_offset
|
|
- 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
|
|
- Code: 0x7
|
|
Tag: DW_TAG_variable
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_location
|
|
Form: DW_FORM_sec_offset
|
|
- 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
|
|
- 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_LLVM_stmt_sequence
|
|
Form: DW_FORM_sec_offset
|
|
- 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
|
|
- Code: 0x9
|
|
Tag: DW_TAG_variable
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- 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
|
|
- Code: 0xA
|
|
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: 0xB
|
|
Tag: DW_TAG_subprogram
|
|
Children: DW_CHILDREN_yes
|
|
Attributes:
|
|
- 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
|
|
- Attribute: DW_AT_inline
|
|
Form: DW_FORM_data1
|
|
- Code: 0xC
|
|
Tag: DW_TAG_formal_parameter
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- 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
|
|
- Code: 0xD
|
|
Tag: DW_TAG_inlined_subroutine
|
|
Children: DW_CHILDREN_yes
|
|
Attributes:
|
|
- Attribute: DW_AT_abstract_origin
|
|
Form: DW_FORM_ref_addr
|
|
- Attribute: DW_AT_low_pc
|
|
Form: DW_FORM_addr
|
|
- Attribute: DW_AT_high_pc
|
|
Form: DW_FORM_data4
|
|
- Attribute: DW_AT_call_file
|
|
Form: DW_FORM_data1
|
|
- Attribute: DW_AT_call_line
|
|
Form: DW_FORM_data1
|
|
- Attribute: DW_AT_call_column
|
|
Form: DW_FORM_data1
|
|
- Code: 0xE
|
|
Tag: DW_TAG_formal_parameter
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_location
|
|
Form: DW_FORM_sec_offset
|
|
- Attribute: DW_AT_abstract_origin
|
|
Form: DW_FORM_ref_addr
|
|
- Code: 0xF
|
|
Tag: DW_TAG_variable
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_location
|
|
Form: DW_FORM_sec_offset
|
|
- Attribute: DW_AT_abstract_origin
|
|
Form: DW_FORM_ref_addr
|
|
- Code: 0x10
|
|
Tag: DW_TAG_call_site
|
|
Children: DW_CHILDREN_yes
|
|
Attributes:
|
|
- Attribute: DW_AT_call_origin
|
|
Form: DW_FORM_ref4
|
|
- Attribute: DW_AT_call_return_pc
|
|
Form: DW_FORM_addr
|
|
- Code: 0x11
|
|
Tag: DW_TAG_call_site_parameter
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_location
|
|
Form: DW_FORM_exprloc
|
|
- Attribute: DW_AT_call_value
|
|
Form: DW_FORM_exprloc
|
|
debug_aranges:
|
|
- Length: 0x2C
|
|
Version: 2
|
|
CuOffset: 0x0
|
|
AddressSize: 0x8
|
|
Descriptors:
|
|
- Address: 0x100000338
|
|
Length: 0xE4
|
|
debug_info:
|
|
- Length: 0x3D8
|
|
Version: 4
|
|
AbbrevTableID: 0
|
|
AbbrOffset: 0x0
|
|
AddrSize: 8
|
|
Entries:
|
|
- AbbrCode: 0x1
|
|
Values:
|
|
- Value: 0x1
|
|
- Value: 0x21
|
|
- Value: 0x94
|
|
- Value: 0xAA
|
|
- Value: 0x0
|
|
- Value: 0xAC
|
|
- Value: 0x1
|
|
- Value: 0x100000338
|
|
- Value: 0xE4
|
|
- AbbrCode: 0x2
|
|
Values:
|
|
- Value: 0xAE
|
|
- Value: 0x43
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- Value: 0x2
|
|
- Value: 0x9
|
|
BlockData: [ 0x3, 0x0, 0x40, 0x0, 0x0, 0x1, 0x0, 0x0,
|
|
0x0 ]
|
|
- AbbrCode: 0x3
|
|
Values:
|
|
- Value: 0x48
|
|
- AbbrCode: 0x4
|
|
Values:
|
|
- Value: 0xBC
|
|
- Value: 0x5
|
|
- Value: 0x4
|
|
- AbbrCode: 0x5
|
|
Values:
|
|
- Value: 0x100000338
|
|
- Value: 0x14
|
|
- Value: 0x1
|
|
- Value: 0x54
|
|
- Value: 0x1
|
|
BlockData: [ 0x6F ]
|
|
- Value: 0x1
|
|
- Value: 0xC0
|
|
- Value: 0x1
|
|
- Value: 0x4
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x0
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x4
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x39
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x5
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x5C
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x6
|
|
- Value: 0x48
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x5
|
|
Values:
|
|
- Value: 0x100000338
|
|
- Value: 0x14
|
|
- Value: 0x1
|
|
- Value: 0x37
|
|
- Value: 0x1
|
|
BlockData: [ 0x6F ]
|
|
- Value: 0x1
|
|
- Value: 0xDB
|
|
- Value: 0x1
|
|
- Value: 0xB
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x7F
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0xB
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0xB8
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0xC
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0xDB
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0xD
|
|
- Value: 0x48
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x8
|
|
Values:
|
|
- Value: 0x10000034C
|
|
- Value: 0x20
|
|
- Value: 0x8E
|
|
- Value: 0x1
|
|
BlockData: [ 0x6D ]
|
|
- Value: 0x1
|
|
- Value: 0xEB
|
|
- Value: 0x1
|
|
- Value: 0x12
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0xFE
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x12
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x137
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x14
|
|
- Value: 0x48
|
|
- AbbrCode: 0x9
|
|
Values:
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x13
|
|
- Value: 0x48
|
|
- AbbrCode: 0xA
|
|
Values:
|
|
- Value: 0x4F
|
|
- Value: 0x10000035C
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x8
|
|
Values:
|
|
- Value: 0x10000034C
|
|
- Value: 0x20
|
|
- Value: 0x6F
|
|
- Value: 0x1
|
|
BlockData: [ 0x6D ]
|
|
- Value: 0x1
|
|
- Value: 0xFB
|
|
- Value: 0x1
|
|
- Value: 0x19
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x15A
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x19
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x193
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x1B
|
|
- Value: 0x48
|
|
- AbbrCode: 0x9
|
|
Values:
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x1A
|
|
- Value: 0x48
|
|
- AbbrCode: 0xA
|
|
Values:
|
|
- Value: 0x9A
|
|
- Value: 0x10000035C
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0xB
|
|
Values:
|
|
- Value: 0x10B
|
|
- Value: 0x1
|
|
- Value: 0x20
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0xC
|
|
Values:
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x20
|
|
- Value: 0x48
|
|
- AbbrCode: 0x9
|
|
Values:
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x22
|
|
- Value: 0x48
|
|
- AbbrCode: 0x9
|
|
Values:
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x21
|
|
- Value: 0x48
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x8
|
|
Values:
|
|
- Value: 0x10000036C
|
|
- Value: 0x24
|
|
- Value: 0xD1
|
|
- Value: 0x1
|
|
BlockData: [ 0x6D ]
|
|
- Value: 0x1
|
|
- Value: 0x11C
|
|
- Value: 0x1
|
|
- Value: 0x27
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x1B6
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x27
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x1EF
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x28
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x214
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x29
|
|
- Value: 0x48
|
|
- AbbrCode: 0xD
|
|
Values:
|
|
- Value: 0x18D
|
|
- Value: 0x100000374
|
|
- Value: 0x10
|
|
- Value: 0x1
|
|
- Value: 0x29
|
|
- Value: 0x12
|
|
- AbbrCode: 0xE
|
|
Values:
|
|
- Value: 0x237
|
|
- Value: 0x199
|
|
- AbbrCode: 0xF
|
|
Values:
|
|
- Value: 0x25C
|
|
- Value: 0x1A4
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0xA
|
|
Values:
|
|
- Value: 0xE5
|
|
- Value: 0x10000037C
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x8
|
|
Values:
|
|
- Value: 0x10000036C
|
|
- Value: 0x24
|
|
- Value: 0xAD
|
|
- Value: 0x1
|
|
BlockData: [ 0x6D ]
|
|
- Value: 0x1
|
|
- Value: 0x12C
|
|
- Value: 0x1
|
|
- Value: 0x2E
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x27F
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x2E
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x2B8
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x2F
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x2DD
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x30
|
|
- Value: 0x48
|
|
- AbbrCode: 0xD
|
|
Values:
|
|
- Value: 0x18D
|
|
- Value: 0x100000374
|
|
- Value: 0x10
|
|
- Value: 0x1
|
|
- Value: 0x30
|
|
- Value: 0x12
|
|
- AbbrCode: 0xE
|
|
Values:
|
|
- Value: 0x300
|
|
- Value: 0x199
|
|
- AbbrCode: 0xF
|
|
Values:
|
|
- Value: 0x325
|
|
- Value: 0x1A4
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0xA
|
|
Values:
|
|
- Value: 0xE5
|
|
- Value: 0x10000037C
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x8
|
|
Values:
|
|
- Value: 0x100000390
|
|
- Value: 0x20
|
|
- Value: 0xF3
|
|
- Value: 0x1
|
|
BlockData: [ 0x6D ]
|
|
- Value: 0x1
|
|
- Value: 0x13C
|
|
- Value: 0x1
|
|
- Value: 0x35
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x348
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x35
|
|
- Value: 0x48
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x381
|
|
- Value: 0xD4
|
|
- Value: 0x1
|
|
- Value: 0x37
|
|
- Value: 0x48
|
|
- AbbrCode: 0x9
|
|
Values:
|
|
- Value: 0xD2
|
|
- Value: 0x1
|
|
- Value: 0x36
|
|
- Value: 0x48
|
|
- AbbrCode: 0xA
|
|
Values:
|
|
- Value: 0x1BB
|
|
- Value: 0x1000003A0
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x5
|
|
Values:
|
|
- Value: 0x1000003B0
|
|
- Value: 0x8
|
|
- Value: 0x1
|
|
- Value: 0xFFFFFFFF
|
|
- Value: 0x1
|
|
BlockData: [ 0x6F ]
|
|
- Value: 0x1
|
|
- Value: 0x146
|
|
- Value: 0x1
|
|
- Value: 0x3E
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x6
|
|
Values:
|
|
- Value: 0x3A4
|
|
- Value: 0xD0
|
|
- Value: 0x1
|
|
- Value: 0x3F
|
|
- Value: 0x48
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x8
|
|
Values:
|
|
- Value: 0x1000003B8
|
|
- Value: 0x64
|
|
- Value: 0x12B
|
|
- Value: 0x1
|
|
BlockData: [ 0x6D ]
|
|
- Value: 0x1
|
|
- Value: 0x15C
|
|
- Value: 0x1
|
|
- Value: 0x44
|
|
- Value: 0x48
|
|
- Value: 0x1
|
|
- Value: 0x1
|
|
- AbbrCode: 0x7
|
|
Values:
|
|
- Value: 0x3DD
|
|
- Value: 0x161
|
|
- Value: 0x1
|
|
- Value: 0x45
|
|
- Value: 0x48
|
|
- AbbrCode: 0x10
|
|
Values:
|
|
- Value: 0x2B9
|
|
- Value: 0x1000003CC
|
|
- AbbrCode: 0x11
|
|
Values:
|
|
- Value: 0x1
|
|
BlockData: [ 0x50 ]
|
|
- Value: 0x1
|
|
BlockData: [ 0x31 ]
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x10
|
|
Values:
|
|
- Value: 0x23A
|
|
- Value: 0x1000003D8
|
|
- AbbrCode: 0x11
|
|
Values:
|
|
- Value: 0x1
|
|
BlockData: [ 0x50 ]
|
|
- Value: 0x1
|
|
BlockData: [ 0x33 ]
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x10
|
|
Values:
|
|
- Value: 0x9A
|
|
- Value: 0x1000003E4
|
|
- AbbrCode: 0x11
|
|
Values:
|
|
- Value: 0x1
|
|
BlockData: [ 0x50 ]
|
|
- Value: 0x1
|
|
BlockData: [ 0x34 ]
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x10
|
|
Values:
|
|
- Value: 0x139
|
|
- Value: 0x1000003F0
|
|
- AbbrCode: 0x11
|
|
Values:
|
|
- Value: 0x1
|
|
BlockData: [ 0x50 ]
|
|
- Value: 0x2
|
|
BlockData: [ 0x10, 0x29 ]
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x10
|
|
Values:
|
|
- Value: 0x1BB
|
|
- Value: 0x100000400
|
|
- AbbrCode: 0x11
|
|
Values:
|
|
- Value: 0x1
|
|
BlockData: [ 0x50 ]
|
|
- Value: 0x1
|
|
BlockData: [ 0x3B ]
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x10
|
|
Values:
|
|
- Value: 0x30D
|
|
- Value: 0x10000040C
|
|
- AbbrCode: 0x11
|
|
Values:
|
|
- Value: 0x1
|
|
BlockData: [ 0x50 ]
|
|
- Value: 0x2
|
|
BlockData: [ 0x83, 0x0 ]
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x0
|
|
- AbbrCode: 0x0
|
|
debug_line:
|
|
- Length: 353
|
|
Version: 4
|
|
PrologueLength: 45
|
|
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: merged_funcs_test.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: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 11
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 20
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968120
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: 0x16
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 20
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968140
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 24
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 18
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_set_epilogue_begin
|
|
Data: 0
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968140
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 17
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 18
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_set_epilogue_begin
|
|
Data: 0
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968172
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 45
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: -13
|
|
Data: 0
|
|
- Opcode: 0x82
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 18
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 14
|
|
Data: 0
|
|
- Opcode: 0x82
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_set_epilogue_begin
|
|
Data: 0
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968172
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 38
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: -6
|
|
Data: 0
|
|
- Opcode: 0x82
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 18
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: 0x89
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_set_epilogue_begin
|
|
Data: 0
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968208
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 52
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 15
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 18
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 19
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_set_epilogue_begin
|
|
Data: 0
|
|
- Opcode: 0x83
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968240
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 14
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 64
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: 0x4A
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 9
|
|
SubOpcode: DW_LNE_set_address
|
|
Data: 4294968248
|
|
- Opcode: DW_LNS_advance_line
|
|
SData: 67
|
|
Data: 0
|
|
- Opcode: DW_LNS_copy
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 12
|
|
- Opcode: DW_LNS_set_prologue_end
|
|
Data: 0
|
|
- Opcode: 0xBC
|
|
Data: 0
|
|
- Opcode: 0xBB
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 9
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: 0x82
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 12
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: 0xBB
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 9
|
|
- Opcode: 0x81
|
|
Data: 0
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 12
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 9
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: 0x82
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 12
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 9
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: 0x82
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_column
|
|
Data: 5
|
|
- Opcode: DW_LNS_negate_stmt
|
|
Data: 0
|
|
- Opcode: DW_LNS_set_epilogue_begin
|
|
Data: 0
|
|
- Opcode: 0x4B
|
|
Data: 0
|
|
- Opcode: DW_LNS_advance_pc
|
|
Data: 12
|
|
- Opcode: DW_LNS_extended_op
|
|
ExtLen: 1
|
|
SubOpcode: DW_LNE_end_sequence
|
|
Data: 0
|
|
...
|