Files
TheRock/compiler/amd-llvm/llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s
T
derek.holloway 7502bf64a4
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
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

319 lines
15 KiB
ArmAsm

# RUN: llvm-mc -triple=x86_64-apple-macosx10.9 -filetype=obj -o %t.o %s
# RUN: llvm-jitlink -num-threads=0 -debug-only=orc -noexec -debugger-support \
# RUN: %t.o 2>&1 \
# RUN: | FileCheck %s
#
# REQUIRES: asserts && system-darwin
#
# Test that source file names can be indentified from DWARF line tables.
# CHECK: Using FileName = "check-dwarf-filename.c" from DWARF line table
.section __TEXT,__text,regular,pure_instructions
.build_version macos, 15, 0 sdk_version 15, 0
.globl _main ## -- Begin function main
.p2align 4, 0x90
_main: ## @main
Lfunc_begin0:
.file 0 "/Users/lhames/Projects/scratch" "check-dwarf-filename.c" md5 0x331a6c7ae0cfcd2896eca60ac6f5703e
.loc 0 1 0 ## check-dwarf-filename.c:1:0
.cfi_startproc
## %bb.0:
##DEBUG_VALUE: main:argc <- $edi
##DEBUG_VALUE: main:argv <- $rsi
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset %rbp, -16
movq %rsp, %rbp
.cfi_def_cfa_register %rbp
Ltmp0:
.loc 0 2 3 prologue_end ## check-dwarf-filename.c:2:3
xorl %eax, %eax
.loc 0 2 3 epilogue_begin is_stmt 0 ## check-dwarf-filename.c:2:3
popq %rbp
retq
Ltmp1:
Lfunc_end0:
.cfi_endproc
## -- End function
.section __DWARF,__debug_abbrev,regular,debug
Lsection_abbrev:
.byte 1 ## Abbreviation Code
.byte 17 ## DW_TAG_compile_unit
.byte 1 ## DW_CHILDREN_yes
.byte 37 ## DW_AT_producer
.byte 37 ## DW_FORM_strx1
.byte 19 ## DW_AT_language
.byte 5 ## DW_FORM_data2
.byte 3 ## DW_AT_name
.byte 37 ## DW_FORM_strx1
.ascii "\202|" ## DW_AT_LLVM_sysroot
.byte 37 ## DW_FORM_strx1
.ascii "\357\177" ## DW_AT_APPLE_sdk
.byte 37 ## DW_FORM_strx1
.byte 114 ## DW_AT_str_offsets_base
.byte 23 ## DW_FORM_sec_offset
.byte 16 ## DW_AT_stmt_list
.byte 23 ## DW_FORM_sec_offset
.byte 27 ## DW_AT_comp_dir
.byte 37 ## DW_FORM_strx1
.ascii "\341\177" ## DW_AT_APPLE_optimized
.byte 25 ## DW_FORM_flag_present
.byte 17 ## DW_AT_low_pc
.byte 27 ## DW_FORM_addrx
.byte 18 ## DW_AT_high_pc
.byte 6 ## DW_FORM_data4
.byte 115 ## DW_AT_addr_base
.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 27 ## DW_FORM_addrx
.byte 18 ## DW_AT_high_pc
.byte 6 ## DW_FORM_data4
.byte 64 ## DW_AT_frame_base
.byte 24 ## DW_FORM_exprloc
.byte 122 ## DW_AT_call_all_calls
.byte 25 ## DW_FORM_flag_present
.byte 3 ## DW_AT_name
.byte 37 ## DW_FORM_strx1
.byte 58 ## DW_AT_decl_file
.byte 11 ## DW_FORM_data1
.byte 59 ## DW_AT_decl_line
.byte 11 ## DW_FORM_data1
.byte 39 ## DW_AT_prototyped
.byte 25 ## DW_FORM_flag_present
.byte 73 ## DW_AT_type
.byte 19 ## DW_FORM_ref4
.byte 63 ## DW_AT_external
.byte 25 ## DW_FORM_flag_present
.ascii "\341\177" ## DW_AT_APPLE_optimized
.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 37 ## DW_FORM_strx1
.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 36 ## DW_TAG_base_type
.byte 0 ## DW_CHILDREN_no
.byte 3 ## DW_AT_name
.byte 37 ## DW_FORM_strx1
.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 5 ## 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 __DWARF,__debug_info,regular,debug
Lsection_info:
Lcu_begin0:
.set Lset0, Ldebug_info_end0-Ldebug_info_start0 ## Length of Unit
.long Lset0
Ldebug_info_start0:
.short 5 ## DWARF version number
.byte 1 ## DWARF Unit Type
.byte 8 ## Address Size (in bytes)
.set Lset1, Lsection_abbrev-Lsection_abbrev ## Offset Into Abbrev. Section
.long Lset1
.byte 1 ## Abbrev [1] 0xc:0x50 DW_TAG_compile_unit
.byte 0 ## DW_AT_producer
.short 29 ## DW_AT_language
.byte 1 ## DW_AT_name
.byte 2 ## DW_AT_LLVM_sysroot
.byte 3 ## DW_AT_APPLE_sdk
.set Lset2, Lstr_offsets_base0-Lsection_str_off ## DW_AT_str_offsets_base
.long Lset2
.set Lset3, Lline_table_start0-Lsection_line ## DW_AT_stmt_list
.long Lset3
.byte 4 ## DW_AT_comp_dir
## DW_AT_APPLE_optimized
.byte 0 ## DW_AT_low_pc
.set Lset4, Lfunc_end0-Lfunc_begin0 ## DW_AT_high_pc
.long Lset4
.set Lset5, Laddr_table_base0-Lsection_info0 ## DW_AT_addr_base
.long Lset5
.byte 2 ## Abbrev [2] 0x25:0x24 DW_TAG_subprogram
.byte 0 ## DW_AT_low_pc
.set Lset6, Lfunc_end0-Lfunc_begin0 ## DW_AT_high_pc
.long Lset6
.byte 1 ## DW_AT_frame_base
.byte 86
## DW_AT_call_all_calls
.byte 5 ## DW_AT_name
.byte 0 ## DW_AT_decl_file
.byte 1 ## DW_AT_decl_line
## DW_AT_prototyped
.long 73 ## DW_AT_type
## DW_AT_external
## DW_AT_APPLE_optimized
.byte 3 ## Abbrev [3] 0x34:0xa DW_TAG_formal_parameter
.byte 1 ## DW_AT_location
.byte 85
.byte 7 ## DW_AT_name
.byte 0 ## DW_AT_decl_file
.byte 1 ## DW_AT_decl_line
.long 73 ## DW_AT_type
.byte 3 ## Abbrev [3] 0x3e:0xa DW_TAG_formal_parameter
.byte 1 ## DW_AT_location
.byte 84
.byte 8 ## DW_AT_name
.byte 0 ## DW_AT_decl_file
.byte 1 ## DW_AT_decl_line
.long 77 ## DW_AT_type
.byte 0 ## End Of Children Mark
.byte 4 ## Abbrev [4] 0x49:0x4 DW_TAG_base_type
.byte 6 ## DW_AT_name
.byte 5 ## DW_AT_encoding
.byte 4 ## DW_AT_byte_size
.byte 5 ## Abbrev [5] 0x4d:0x5 DW_TAG_pointer_type
.long 82 ## DW_AT_type
.byte 5 ## Abbrev [5] 0x52:0x5 DW_TAG_pointer_type
.long 87 ## DW_AT_type
.byte 4 ## Abbrev [4] 0x57:0x4 DW_TAG_base_type
.byte 9 ## DW_AT_name
.byte 6 ## DW_AT_encoding
.byte 1 ## DW_AT_byte_size
.byte 0 ## End Of Children Mark
Ldebug_info_end0:
.section __DWARF,__debug_str_offs,regular,debug
Lsection_str_off:
.long 44 ## Length of String Offsets Set
.short 5
.short 0
Lstr_offsets_base0:
.section __DWARF,__debug_str,regular,debug
Linfo_string:
.asciz "Apple clang version 16.0.0 (clang-1600.0.26.3)" ## string offset=0
.asciz "check-dwarf-filename.c" ## string offset=47
.asciz "/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk" ## string offset=70
.asciz "MacOSX15.0.sdk" ## string offset=126
.asciz "/Users/lhames/Projects/scratch" ## string offset=141
.asciz "main" ## string offset=172
.asciz "int" ## string offset=177
.asciz "argc" ## string offset=181
.asciz "argv" ## string offset=186
.asciz "char" ## string offset=191
.section __DWARF,__debug_str_offs,regular,debug
.long 0
.long 47
.long 70
.long 126
.long 141
.long 172
.long 177
.long 181
.long 186
.long 191
.section __DWARF,__debug_addr,regular,debug
Lsection_info0:
.set Lset7, Ldebug_addr_end0-Ldebug_addr_start0 ## Length of contribution
.long Lset7
Ldebug_addr_start0:
.short 5 ## DWARF version number
.byte 8 ## Address size
.byte 0 ## Segment selector size
Laddr_table_base0:
.quad Lfunc_begin0
Ldebug_addr_end0:
.section __DWARF,__debug_names,regular,debug
Ldebug_names_begin:
.set Lset8, Lnames_end0-Lnames_start0 ## Header: unit length
.long Lset8
Lnames_start0:
.short 5 ## Header: version
.short 0 ## Header: padding
.long 1 ## Header: compilation unit count
.long 0 ## Header: local type unit count
.long 0 ## Header: foreign type unit count
.long 3 ## Header: bucket count
.long 3 ## Header: name count
.set Lset9, Lnames_abbrev_end0-Lnames_abbrev_start0 ## Header: abbreviation table size
.long Lset9
.long 8 ## Header: augmentation string size
.ascii "LLVM0700" ## Header: augmentation string
.set Lset10, Lcu_begin0-Lsection_info ## Compilation unit 0
.long Lset10
.long 0 ## Bucket 0
.long 1 ## Bucket 1
.long 2 ## Bucket 2
.long 2090499946 ## Hash in Bucket 1
.long 193495088 ## Hash in Bucket 2
.long 2090147939 ## Hash in Bucket 2
.long 172 ## String in Bucket 1: main
.long 177 ## String in Bucket 2: int
.long 191 ## String in Bucket 2: char
.set Lset11, Lnames0-Lnames_entries0 ## Offset in Bucket 1
.long Lset11
.set Lset12, Lnames1-Lnames_entries0 ## Offset in Bucket 2
.long Lset12
.set Lset13, Lnames2-Lnames_entries0 ## Offset in Bucket 2
.long Lset13
Lnames_abbrev_start0:
.ascii "\230." ## Abbrev code
.byte 46 ## DW_TAG_subprogram
.byte 3 ## DW_IDX_die_offset
.byte 19 ## DW_FORM_ref4
.byte 4 ## DW_IDX_parent
.byte 25 ## DW_FORM_flag_present
.byte 0 ## End of abbrev
.byte 0 ## End of abbrev
.ascii "\230$" ## Abbrev code
.byte 36 ## DW_TAG_base_type
.byte 3 ## DW_IDX_die_offset
.byte 19 ## DW_FORM_ref4
.byte 4 ## DW_IDX_parent
.byte 25 ## DW_FORM_flag_present
.byte 0 ## End of abbrev
.byte 0 ## End of abbrev
.byte 0 ## End of abbrev list
Lnames_abbrev_end0:
Lnames_entries0:
Lnames0:
L1:
.ascii "\230." ## Abbreviation code
.long 37 ## DW_IDX_die_offset
.byte 0 ## DW_IDX_parent
## End of list: main
Lnames1:
L0:
.ascii "\230$" ## Abbreviation code
.long 73 ## DW_IDX_die_offset
.byte 0 ## DW_IDX_parent
## End of list: int
Lnames2:
L2:
.ascii "\230$" ## Abbreviation code
.long 87 ## DW_IDX_die_offset
.byte 0 ## DW_IDX_parent
## End of list: char
.p2align 2, 0x0
Lnames_end0:
.subsections_via_symbols
.section __DWARF,__debug_line,regular,debug
Lsection_line:
Lline_table_start0: