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_reg5 RDI), 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 85 # super-register DW_OP_reg5
23 .byte 159 # DW_OP_stack_value
27 .section .debug_abbrev,"",@progbits
28 .byte 1 # Abbreviation Code
29 .byte 17 # DW_TAG_compile_unit
30 .byte 1 # DW_CHILDREN_yes
31 .byte 37 # DW_AT_producer
32 .byte 14 # DW_FORM_strp
35 .byte 5 # Abbreviation Code
36 .byte 52 # DW_TAG_variable
37 .byte 0 # DW_CHILDREN_no
39 .byte 14 # DW_FORM_strp
40 .byte 2 # DW_AT_location
41 .byte 23 # DW_FORM_sec_offset
46 .section .debug_info,"",@progbits
48 .long .Lcu_end0-.Lcu_start0 # Length of Unit
50 .short 4 # DWARF version number
51 .long .debug_abbrev # Offset Into Abbrev. Section
52 .byte 8 # Address Size (in bytes)
53 .byte 1 # Abbrev [1] DW_TAG_compile_unit
54 .long .Linfo_producer # DW_AT_producer
55 .byte 5 # Abbrev [5] DW_TAG_variable
56 .long .Lname_a # DW_AT_name
57 .long .Ldebug_loc0 # DW_AT_location
58 .byte 0 # End Of Children Mark