1 # RUN: llvm-mc -triple x86_64-pc-linux %s -filetype=obj | llvm-dwarfdump - | FileCheck %s
3 # CHECK: DW_TAG_variable
4 # CHECK-NEXT: DW_AT_name ("a")
5 # CHECK-NEXT: DW_AT_location
6 # CHECK-NEXT: DW_OP_entry_value(DW_OP_breg5 RDI+0), DW_OP_stack_value)
8 .section .debug_str,"MS",@progbits,1
10 .asciz "hand-written DWARF"
14 .section .debug_loc,"",@progbits
18 .short .Lloc0_end-.Lloc0_start # Loc expr size
20 .byte 163 # DW_OP_entry_value
22 .byte 117 # DW_OP_breg5
24 .byte 159 # DW_OP_stack_value
28 .section .debug_abbrev,"",@progbits
29 .byte 1 # Abbreviation Code
30 .byte 17 # DW_TAG_compile_unit
31 .byte 1 # DW_CHILDREN_yes
32 .byte 37 # DW_AT_producer
33 .byte 14 # DW_FORM_strp
36 .byte 5 # Abbreviation Code
37 .byte 52 # DW_TAG_variable
38 .byte 0 # DW_CHILDREN_no
40 .byte 14 # DW_FORM_strp
41 .byte 2 # DW_AT_location
42 .byte 23 # DW_FORM_sec_offset
47 .section .debug_info,"",@progbits
49 .long .Lcu_end0-.Lcu_start0 # Length of Unit
51 .short 4 # DWARF version number
52 .long .debug_abbrev # Offset Into Abbrev. Section
53 .byte 8 # Address Size (in bytes)
54 .byte 1 # Abbrev [1] DW_TAG_compile_unit
55 .long .Linfo_producer # DW_AT_producer
56 .byte 5 # Abbrev [5] DW_TAG_variable
57 .long .Lname_a # DW_AT_name
58 .long .Ldebug_loc0 # DW_AT_location
59 .byte 0 # End Of Children Mark