cb424d7448
verify-patch-sanity.py validates every active recipe .patch has internally- consistent hunk line counts — catching the 'malformed patch at line N' failure at commit/CI/preflight time instead of hours into a cook. This cycle hit that class three times (qtwaylandscanner, sddm, xwayland), each only discovered when cookbook tried to apply the patch. Running it across the repo found 29 latent malformed patches (validated against GNU patch: e.g. relibc/P3-sysv-ipc reproduces 'malformed patch at line 22'). They were harmless only because they sit in vendored recipes (baked, not re- applied) — but would fail on any version-bump re-derivation. --fix recounts the hunk headers (body untouched) and repaired all 29. Wired into build-preflight.sh (Phase 1.0D) and redbear-ci.yml, with a unit test (test-patch-sanity.sh). Skips archived/legacy trees and unvalidatable formats (empty placeholders, bare-@@ git hunks).
596 lines
22 KiB
ArmAsm
596 lines
22 KiB
ArmAsm
# REQUIRES: x86-registered-target
|
|
|
|
# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t.o
|
|
# RUN: llvm-symbolizer --obj=%t.o 0x30 0x20 0x6c 0xf | FileCheck %s
|
|
|
|
# CHECK: main
|
|
# CHECK-NEXT: llvm-symbolizer-bbsections-test.c:13
|
|
# CHECK: g
|
|
# CHECK-NEXT: llvm-symbolizer-bbsections-test.c:5
|
|
# CHECK: main
|
|
# CHECK-NEXT: llvm-symbolizer-bbsections-test.c:15
|
|
# CHECK: main
|
|
# CHECK-NEXT: llvm-symbolizer-bbsections-test.c:18
|
|
# How to generate this file:
|
|
# int f(int a) {
|
|
# return a + 1;
|
|
# }
|
|
#
|
|
# int g(int a) {
|
|
# return a + 2;
|
|
# }
|
|
#
|
|
# int h(int a) {
|
|
# return a + 3;
|
|
# }
|
|
#
|
|
# // Use simple control flow to generate lots of basic block sections.
|
|
# int main(int argc, char *argv[]) {
|
|
# if (argc > 10)
|
|
# return f(argc);
|
|
# else if (argc > 8)
|
|
# return g(argc);
|
|
# else if (argc > 4)
|
|
# return h(argc);
|
|
# return 0;
|
|
# }
|
|
#
|
|
# $ clang -S -fbasic-block-sections=all llvm-symbolizer-bbsections-test.cc
|
|
# Manually reororder the sections to place them in this order:
|
|
# _Z1fi
|
|
# main.__part.4
|
|
# _Z1gi
|
|
# main
|
|
# _Z1hi
|
|
# main.__part.5
|
|
# (rest)
|
|
# Strip the .section .text directives to have all the functions in the same
|
|
# section.
|
|
# This ensures the basic blocks are reordered non-contiguous exactly like
|
|
# how a linker would do it.
|
|
.text
|
|
.file "llvm-symbolizer-bbsections-test.c"
|
|
#.section .text._Z1fi,"ax",@progbits
|
|
.globl _Z1fi # -- Begin function _Z1fi
|
|
.p2align 4, 0x90
|
|
.type _Z1fi,@function
|
|
_Z1fi: # @_Z1fi
|
|
.Lfunc_begin0:
|
|
.file 1 "Examples" "llvm-symbolizer-bbsections-test.c"
|
|
.loc 1 1 0 # llvm-symbolizer-bbsections-test.c:1:0
|
|
.cfi_startproc
|
|
# %bb.0:
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset %rbp, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register %rbp
|
|
movl %edi, -4(%rbp)
|
|
.Ltmp0:
|
|
.loc 1 2 10 prologue_end # llvm-symbolizer-bbsections-test.c:2:10
|
|
movl -4(%rbp), %eax
|
|
.loc 1 2 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:2:12
|
|
addl $1, %eax
|
|
.loc 1 2 3 # llvm-symbolizer-bbsections-test.c:2:3
|
|
popq %rbp
|
|
.cfi_def_cfa %rsp, 8
|
|
retq
|
|
.Ltmp1:
|
|
.cfi_endproc
|
|
.Lfunc_end0:
|
|
.size _Z1fi, .Lfunc_end0-_Z1fi
|
|
# -- End function
|
|
#.section text.main,"ax",@progbits,unique,4
|
|
main.__part.4:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 18 17 is_stmt 1 # llvm-symbolizer-bbsections-test.c:18:17
|
|
cmpl $4, -8(%rbp)
|
|
.Ltmp9:
|
|
.loc 1 18 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:18:12
|
|
jle main.__part.6
|
|
jmp main.__part.5
|
|
.LBB_END3_4:
|
|
.size main.__part.4, .LBB_END3_4-main.__part.4
|
|
.cfi_endproc
|
|
|
|
#.section .text._Z1gi,"ax",@progbits
|
|
.globl _Z1gi # -- Begin function _Z1gi
|
|
.p2align 4, 0x90
|
|
.type _Z1gi,@function
|
|
_Z1gi: # @_Z1gi
|
|
.Lfunc_begin1:
|
|
.loc 1 5 0 is_stmt 1 # llvm-symbolizer-bbsections-test.c:5:0
|
|
.cfi_startproc
|
|
# %bb.0:
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset %rbp, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register %rbp
|
|
movl %edi, -4(%rbp)
|
|
.Ltmp2:
|
|
.loc 1 6 10 prologue_end # llvm-symbolizer-bbsections-test.c:6:10
|
|
movl -4(%rbp), %eax
|
|
.loc 1 6 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:6:12
|
|
addl $2, %eax
|
|
.loc 1 6 3 # llvm-symbolizer-bbsections-test.c:6:3
|
|
popq %rbp
|
|
.cfi_def_cfa %rsp, 8
|
|
retq
|
|
.Ltmp3:
|
|
.cfi_endproc
|
|
.Lfunc_end1:
|
|
.size _Z1gi, .Lfunc_end1-_Z1gi
|
|
# -- End function
|
|
#.section .text.main,"ax",@progbits
|
|
.globl main # -- Begin function main
|
|
.p2align 4, 0x90
|
|
.type main,@function
|
|
main: # @main
|
|
.Lfunc_begin3:
|
|
.loc 1 13 0 is_stmt 1 # llvm-symbolizer-bbsections-test.c:13:0
|
|
.cfi_startproc
|
|
# %bb.0:
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset %rbp, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register %rbp
|
|
subq $16, %rsp
|
|
movl $0, -4(%rbp)
|
|
movl %edi, -8(%rbp)
|
|
movq %rsi, -16(%rbp)
|
|
.Ltmp6:
|
|
.loc 1 14 12 prologue_end # llvm-symbolizer-bbsections-test.c:14:12
|
|
cmpl $10, -8(%rbp)
|
|
.Ltmp7:
|
|
.loc 1 14 7 is_stmt 0 # llvm-symbolizer-bbsections-test.c:14:7
|
|
jle main.__part.2
|
|
jmp main.__part.1
|
|
.cfi_endproc
|
|
#.section .text._Z1hi,"ax",@progbits
|
|
.globl _Z1hi # -- Begin function _Z1hi
|
|
.p2align 4, 0x90
|
|
.type _Z1hi,@function
|
|
_Z1hi: # @_Z1hi
|
|
.Lfunc_begin2:
|
|
.loc 1 9 0 is_stmt 1 # llvm-symbolizer-bbsections-test.c:9:0
|
|
.cfi_startproc
|
|
# %bb.0:
|
|
pushq %rbp
|
|
.cfi_def_cfa_offset 16
|
|
.cfi_offset %rbp, -16
|
|
movq %rsp, %rbp
|
|
.cfi_def_cfa_register %rbp
|
|
movl %edi, -4(%rbp)
|
|
.Ltmp4:
|
|
.loc 1 10 10 prologue_end # llvm-symbolizer-bbsections-test.c:10:10
|
|
movl -4(%rbp), %eax
|
|
.loc 1 10 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:10:12
|
|
addl $3, %eax
|
|
.loc 1 10 3 # llvm-symbolizer-bbsections-test.c:10:3
|
|
popq %rbp
|
|
.cfi_def_cfa %rsp, 8
|
|
retq
|
|
.Ltmp5:
|
|
.cfi_endproc
|
|
.Lfunc_end2:
|
|
.size _Z1hi, .Lfunc_end2-_Z1hi
|
|
# -- End function
|
|
#.section .text.main,"ax",@progbits,unique,5
|
|
main.__part.5:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 19 14 is_stmt 1 # llvm-symbolizer-bbsections-test.c:19:14
|
|
movl -8(%rbp), %edi
|
|
.loc 1 19 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:19:12
|
|
callq _Z1hi
|
|
.loc 1 19 5 # llvm-symbolizer-bbsections-test.c:19:5
|
|
movl %eax, -4(%rbp)
|
|
jmp main.__part.9
|
|
.Ltmp10:
|
|
.LBB_END3_5:
|
|
.size main.__part.5, .LBB_END3_5-main.__part.5
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,1
|
|
main.__part.1:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 15 14 is_stmt 1 # llvm-symbolizer-bbsections-test.c:15:14
|
|
movl -8(%rbp), %edi
|
|
.loc 1 15 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:15:12
|
|
callq _Z1fi
|
|
.loc 1 15 5 # llvm-symbolizer-bbsections-test.c:15:5
|
|
movl %eax, -4(%rbp)
|
|
jmp main.__part.9
|
|
.LBB_END3_1:
|
|
.size main.__part.1, .LBB_END3_1-main.__part.1
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,2
|
|
main.__part.2:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 16 17 is_stmt 1 # llvm-symbolizer-bbsections-test.c:16:17
|
|
cmpl $8, -8(%rbp)
|
|
.Ltmp8:
|
|
.loc 1 16 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:16:12
|
|
jle main.__part.4
|
|
jmp main.__part.3
|
|
.LBB_END3_2:
|
|
.size main.__part.2, .LBB_END3_2-main.__part.2
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,3
|
|
main.__part.3:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 17 14 is_stmt 1 # llvm-symbolizer-bbsections-test.c:17:14
|
|
movl -8(%rbp), %edi
|
|
.loc 1 17 12 is_stmt 0 # llvm-symbolizer-bbsections-test.c:17:12
|
|
callq _Z1gi
|
|
.loc 1 17 5 # llvm-symbolizer-bbsections-test.c:17:5
|
|
movl %eax, -4(%rbp)
|
|
jmp main.__part.9
|
|
.LBB_END3_3:
|
|
.size main.__part.3, .LBB_END3_3-main.__part.3
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,6
|
|
main.__part.6:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 0 5 # llvm-symbolizer-bbsections-test.c:0:5
|
|
jmp main.__part.7
|
|
jmp main.__part.7
|
|
.LBB_END3_6:
|
|
.size main.__part.6, .LBB_END3_6-main.__part.6
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,7
|
|
main.__part.7:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
jmp main.__part.8
|
|
jmp main.__part.8
|
|
.LBB_END3_7:
|
|
.size main.__part.7, .LBB_END3_7-main.__part.7
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,8
|
|
main.__part.8:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 20 3 is_stmt 1 # llvm-symbolizer-bbsections-test.c:20:3
|
|
movl $0, -4(%rbp)
|
|
jmp main.__part.9
|
|
.LBB_END3_8:
|
|
.size main.__part.8, .LBB_END3_8-main.__part.8
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits,unique,9
|
|
main.__part.9:
|
|
.cfi_startproc
|
|
.cfi_def_cfa %rbp, 16
|
|
.cfi_offset %rbp, -16
|
|
.loc 1 21 1 # llvm-symbolizer-bbsections-test.c:21:1
|
|
movl -4(%rbp), %eax
|
|
addq $16, %rsp
|
|
popq %rbp
|
|
.cfi_def_cfa %rsp, 8
|
|
retq
|
|
.Ltmp11:
|
|
.LBB_END3_9:
|
|
.size main.__part.9, .LBB_END3_9-main.__part.9
|
|
.cfi_endproc
|
|
#.section .text.main,"ax",@progbits
|
|
.Lfunc_end3:
|
|
.size main, .Lfunc_end3-main
|
|
# -- End function
|
|
.section .debug_abbrev,"",@progbits
|
|
.byte 1 # Abbreviation Code
|
|
.byte 17 # DW_TAG_compile_unit
|
|
.byte 1 # DW_CHILDREN_yes
|
|
.byte 37 # DW_AT_producer
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 19 # DW_AT_language
|
|
.byte 5 # DW_FORM_data2
|
|
.byte 3 # DW_AT_name
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 16 # DW_AT_stmt_list
|
|
.byte 23 # DW_FORM_sec_offset
|
|
.byte 27 # DW_AT_comp_dir
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 17 # DW_AT_low_pc
|
|
.byte 1 # DW_FORM_addr
|
|
.byte 85 # DW_AT_ranges
|
|
.byte 23 # DW_FORM_sec_offset
|
|
.byte 0 # EOM(1)
|
|
.byte 0 # EOM(2)
|
|
.byte 2 # Abbreviation Code
|
|
.byte 46 # DW_TAG_subprogram
|
|
.byte 1 # DW_CHILDREN_yes
|
|
.byte 17 # DW_AT_low_pc
|
|
.byte 1 # DW_FORM_addr
|
|
.byte 18 # DW_AT_high_pc
|
|
.byte 6 # DW_FORM_data4
|
|
.byte 64 # DW_AT_frame_base
|
|
.byte 24 # DW_FORM_exprloc
|
|
.byte 110 # DW_AT_linkage_name
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 3 # DW_AT_name
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 58 # DW_AT_decl_file
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 59 # DW_AT_decl_line
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 73 # DW_AT_type
|
|
.byte 19 # DW_FORM_ref4
|
|
.byte 63 # DW_AT_external
|
|
.byte 25 # DW_FORM_flag_present
|
|
.byte 0 # EOM(1)
|
|
.byte 0 # EOM(2)
|
|
.byte 3 # Abbreviation Code
|
|
.byte 5 # DW_TAG_formal_parameter
|
|
.byte 0 # DW_CHILDREN_no
|
|
.byte 2 # DW_AT_location
|
|
.byte 24 # DW_FORM_exprloc
|
|
.byte 3 # DW_AT_name
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 58 # DW_AT_decl_file
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 59 # DW_AT_decl_line
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 73 # DW_AT_type
|
|
.byte 19 # DW_FORM_ref4
|
|
.byte 0 # EOM(1)
|
|
.byte 0 # EOM(2)
|
|
.byte 4 # Abbreviation Code
|
|
.byte 46 # DW_TAG_subprogram
|
|
.byte 1 # DW_CHILDREN_yes
|
|
.byte 85 # DW_AT_ranges
|
|
.byte 23 # DW_FORM_sec_offset
|
|
.byte 64 # DW_AT_frame_base
|
|
.byte 24 # DW_FORM_exprloc
|
|
.byte 3 # DW_AT_name
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 58 # DW_AT_decl_file
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 59 # DW_AT_decl_line
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 73 # DW_AT_type
|
|
.byte 19 # DW_FORM_ref4
|
|
.byte 63 # DW_AT_external
|
|
.byte 25 # DW_FORM_flag_present
|
|
.byte 0 # EOM(1)
|
|
.byte 0 # EOM(2)
|
|
.byte 5 # Abbreviation Code
|
|
.byte 36 # DW_TAG_base_type
|
|
.byte 0 # DW_CHILDREN_no
|
|
.byte 3 # DW_AT_name
|
|
.byte 14 # DW_FORM_strp
|
|
.byte 62 # DW_AT_encoding
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 11 # DW_AT_byte_size
|
|
.byte 11 # DW_FORM_data1
|
|
.byte 0 # EOM(1)
|
|
.byte 0 # EOM(2)
|
|
.byte 6 # Abbreviation Code
|
|
.byte 15 # DW_TAG_pointer_type
|
|
.byte 0 # DW_CHILDREN_no
|
|
.byte 73 # DW_AT_type
|
|
.byte 19 # DW_FORM_ref4
|
|
.byte 0 # EOM(1)
|
|
.byte 0 # EOM(2)
|
|
.byte 0 # EOM(3)
|
|
.section .debug_info,"",@progbits
|
|
.Lcu_begin0:
|
|
.long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit
|
|
.Ldebug_info_start0:
|
|
.short 4 # DWARF version number
|
|
.long .debug_abbrev # Offset Into Abbrev. Section
|
|
.byte 8 # Address Size (in bytes)
|
|
.byte 1 # Abbrev [1] 0xb:0xea DW_TAG_compile_unit
|
|
.long .Linfo_string0 # DW_AT_producer
|
|
.short 33 # DW_AT_language
|
|
.long .Linfo_string1 # DW_AT_name
|
|
.long .Lline_table_start0 # DW_AT_stmt_list
|
|
.long .Linfo_string2 # DW_AT_comp_dir
|
|
.quad 0 # DW_AT_low_pc
|
|
.long .Ldebug_ranges1 # DW_AT_ranges
|
|
.byte 2 # Abbrev [2] 0x2a:0x2c DW_TAG_subprogram
|
|
.quad .Lfunc_begin0 # DW_AT_low_pc
|
|
.long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc
|
|
.byte 1 # DW_AT_frame_base
|
|
.byte 86
|
|
.long .Linfo_string3 # DW_AT_linkage_name
|
|
.long .Linfo_string4 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 1 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
# DW_AT_external
|
|
.byte 3 # Abbrev [3] 0x47:0xe DW_TAG_formal_parameter
|
|
.byte 2 # DW_AT_location
|
|
.byte 145
|
|
.byte 124
|
|
.long .Linfo_string11 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 1 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
.byte 0 # End Of Children Mark
|
|
.byte 2 # Abbrev [2] 0x56:0x2c DW_TAG_subprogram
|
|
.quad .Lfunc_begin1 # DW_AT_low_pc
|
|
.long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc
|
|
.byte 1 # DW_AT_frame_base
|
|
.byte 86
|
|
.long .Linfo_string6 # DW_AT_linkage_name
|
|
.long .Linfo_string7 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 5 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
# DW_AT_external
|
|
.byte 3 # Abbrev [3] 0x73:0xe DW_TAG_formal_parameter
|
|
.byte 2 # DW_AT_location
|
|
.byte 145
|
|
.byte 124
|
|
.long .Linfo_string11 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 5 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
.byte 0 # End Of Children Mark
|
|
.byte 2 # Abbrev [2] 0x82:0x2c DW_TAG_subprogram
|
|
.quad .Lfunc_begin2 # DW_AT_low_pc
|
|
.long .Lfunc_end2-.Lfunc_begin2 # DW_AT_high_pc
|
|
.byte 1 # DW_AT_frame_base
|
|
.byte 86
|
|
.long .Linfo_string8 # DW_AT_linkage_name
|
|
.long .Linfo_string9 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 9 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
# DW_AT_external
|
|
.byte 3 # Abbrev [3] 0x9f:0xe DW_TAG_formal_parameter
|
|
.byte 2 # DW_AT_location
|
|
.byte 145
|
|
.byte 124
|
|
.long .Linfo_string11 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 9 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
.byte 0 # End Of Children Mark
|
|
.byte 4 # Abbrev [4] 0xae:0x2e DW_TAG_subprogram
|
|
.long .Ldebug_ranges0 # DW_AT_ranges
|
|
.byte 1 # DW_AT_frame_base
|
|
.byte 86
|
|
.long .Linfo_string10 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 13 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
# DW_AT_external
|
|
.byte 3 # Abbrev [3] 0xbf:0xe DW_TAG_formal_parameter
|
|
.byte 2 # DW_AT_location
|
|
.byte 145
|
|
.byte 120
|
|
.long .Linfo_string12 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 13 # DW_AT_decl_line
|
|
.long 220 # DW_AT_type
|
|
.byte 3 # Abbrev [3] 0xcd:0xe DW_TAG_formal_parameter
|
|
.byte 2 # DW_AT_location
|
|
.byte 145
|
|
.byte 112
|
|
.long .Linfo_string13 # DW_AT_name
|
|
.byte 1 # DW_AT_decl_file
|
|
.byte 13 # DW_AT_decl_line
|
|
.long 227 # DW_AT_type
|
|
.byte 0 # End Of Children Mark
|
|
.byte 5 # Abbrev [5] 0xdc:0x7 DW_TAG_base_type
|
|
.long .Linfo_string5 # DW_AT_name
|
|
.byte 5 # DW_AT_encoding
|
|
.byte 4 # DW_AT_byte_size
|
|
.byte 6 # Abbrev [6] 0xe3:0x5 DW_TAG_pointer_type
|
|
.long 232 # DW_AT_type
|
|
.byte 6 # Abbrev [6] 0xe8:0x5 DW_TAG_pointer_type
|
|
.long 237 # DW_AT_type
|
|
.byte 5 # Abbrev [5] 0xed:0x7 DW_TAG_base_type
|
|
.long .Linfo_string14 # DW_AT_name
|
|
.byte 6 # DW_AT_encoding
|
|
.byte 1 # DW_AT_byte_size
|
|
.byte 0 # End Of Children Mark
|
|
.Ldebug_info_end0:
|
|
.section .debug_ranges,"",@progbits
|
|
.Ldebug_ranges0:
|
|
.quad main.__part.1
|
|
.quad .LBB_END3_1
|
|
.quad main.__part.2
|
|
.quad .LBB_END3_2
|
|
.quad main.__part.3
|
|
.quad .LBB_END3_3
|
|
.quad main.__part.4
|
|
.quad .LBB_END3_4
|
|
.quad main.__part.5
|
|
.quad .LBB_END3_5
|
|
.quad main.__part.6
|
|
.quad .LBB_END3_6
|
|
.quad main.__part.7
|
|
.quad .LBB_END3_7
|
|
.quad main.__part.8
|
|
.quad .LBB_END3_8
|
|
.quad main.__part.9
|
|
.quad .LBB_END3_9
|
|
.quad .Lfunc_begin3
|
|
.quad .Lfunc_end3
|
|
.quad 0
|
|
.quad 0
|
|
.Ldebug_ranges1:
|
|
.quad .Lfunc_begin0
|
|
.quad .Lfunc_end0
|
|
.quad .Lfunc_begin1
|
|
.quad .Lfunc_end1
|
|
.quad .Lfunc_begin2
|
|
.quad .Lfunc_end2
|
|
.quad main.__part.1
|
|
.quad .LBB_END3_1
|
|
.quad main.__part.2
|
|
.quad .LBB_END3_2
|
|
.quad main.__part.3
|
|
.quad .LBB_END3_3
|
|
.quad main.__part.4
|
|
.quad .LBB_END3_4
|
|
.quad main.__part.5
|
|
.quad .LBB_END3_5
|
|
.quad main.__part.6
|
|
.quad .LBB_END3_6
|
|
.quad main.__part.7
|
|
.quad .LBB_END3_7
|
|
.quad main.__part.8
|
|
.quad .LBB_END3_8
|
|
.quad main.__part.9
|
|
.quad .LBB_END3_9
|
|
.quad .Lfunc_begin3
|
|
.quad .Lfunc_end3
|
|
.quad 0
|
|
.quad 0
|
|
.section .debug_str,"MS",@progbits,1
|
|
.Linfo_string0:
|
|
.asciz "clang version 12.0.0 (git@github.com:llvm/llvm-project.git bfa6ca07a8cda0ab889b7fee0b914907ce594e11)" # string offset=0
|
|
.Linfo_string1:
|
|
.asciz "llvm-symbolizer-bbsections-test.c" # string offset=101
|
|
.Linfo_string2:
|
|
.asciz "Examples" # string offset=135
|
|
.Linfo_string3:
|
|
.asciz "_Z1fi" # string offset=182
|
|
.Linfo_string4:
|
|
.asciz "f" # string offset=188
|
|
.Linfo_string5:
|
|
.asciz "int" # string offset=190
|
|
.Linfo_string6:
|
|
.asciz "_Z1gi" # string offset=194
|
|
.Linfo_string7:
|
|
.asciz "g" # string offset=200
|
|
.Linfo_string8:
|
|
.asciz "_Z1hi" # string offset=202
|
|
.Linfo_string9:
|
|
.asciz "h" # string offset=208
|
|
.Linfo_string10:
|
|
.asciz "main" # string offset=210
|
|
.Linfo_string11:
|
|
.asciz "a" # string offset=215
|
|
.Linfo_string12:
|
|
.asciz "argc" # string offset=217
|
|
.Linfo_string13:
|
|
.asciz "argv" # string offset=222
|
|
.Linfo_string14:
|
|
.asciz "char" # string offset=227
|
|
.ident "clang version 12.0.0 (git@github.com:llvm/llvm-project.git bfa6ca07a8cda0ab889b7fee0b914907ce594e11)"
|
|
.section ".note.GNU-stack","",@progbits
|
|
.addrsig
|
|
.addrsig_sym _Z1fi
|
|
.addrsig_sym _Z1gi
|
|
.addrsig_sym _Z1hi
|
|
.section .debug_line,"",@progbits
|
|
.Lline_table_start0:
|