1# RUN: llvm-mc -triple=x86_64-pc-linux -filetype=obj %s > %t 2# RUN: %lldb %t -o "target variable integer structure" -o exit | FileCheck %s 3 4# CHECK: (_Atomic(int)) integer = 14159 5# CHECK: (_Atomic(struct_type)) structure = (member = 71828) 6 7 .data 8integer: 9 .long 14159 10structure: 11 .long 71828 12 13 .section .debug_abbrev,"",@progbits 14 .byte 1 # Abbreviation Code 15 .byte 17 # DW_TAG_compile_unit 16 .byte 1 # DW_CHILDREN_yes 17 .byte 37 # DW_AT_producer 18 .byte 8 # DW_FORM_string 19 .byte 19 # DW_AT_language 20 .byte 5 # DW_FORM_data2 21 .byte 0 # EOM(1) 22 .byte 0 # EOM(2) 23 .byte 2 # Abbreviation Code 24 .byte 52 # DW_TAG_variable 25 .byte 0 # DW_CHILDREN_no 26 .byte 3 # DW_AT_name 27 .byte 8 # DW_FORM_string 28 .byte 73 # DW_AT_type 29 .byte 19 # DW_FORM_ref4 30 .byte 2 # DW_AT_location 31 .byte 24 # DW_FORM_exprloc 32 .byte 0 # EOM(1) 33 .byte 0 # EOM(2) 34 .byte 3 # Abbreviation Code 35 .byte 71 # DW_TAG_atomic_type 36 .byte 0 # DW_CHILDREN_no 37 .byte 73 # DW_AT_type 38 .byte 19 # DW_FORM_ref4 39 .byte 0 # EOM(1) 40 .byte 0 # EOM(2) 41 .byte 4 # Abbreviation Code 42 .byte 36 # DW_TAG_base_type 43 .byte 0 # DW_CHILDREN_no 44 .byte 3 # DW_AT_name 45 .byte 8 # DW_FORM_string 46 .byte 62 # DW_AT_encoding 47 .byte 11 # DW_FORM_data1 48 .byte 11 # DW_AT_byte_size 49 .byte 11 # DW_FORM_data1 50 .byte 0 # EOM(1) 51 .byte 0 # EOM(2) 52 .byte 5 # Abbreviation Code 53 .byte 19 # DW_TAG_structure_type 54 .byte 1 # DW_CHILDREN_yes 55 .byte 3 # DW_AT_name 56 .byte 8 # DW_FORM_string 57 .byte 11 # DW_AT_byte_size 58 .byte 11 # DW_FORM_data1 59 .byte 0 # EOM(1) 60 .byte 0 # EOM(2) 61 .byte 6 # Abbreviation Code 62 .byte 13 # DW_TAG_member 63 .byte 0 # DW_CHILDREN_no 64 .byte 3 # DW_AT_name 65 .byte 8 # DW_FORM_string 66 .byte 73 # DW_AT_type 67 .byte 19 # DW_FORM_ref4 68 .byte 56 # DW_AT_data_member_location 69 .byte 11 # DW_FORM_data1 70 .byte 0 # EOM(1) 71 .byte 0 # EOM(2) 72 .byte 0 # EOM(3) 73 74 .section .debug_info,"",@progbits 75.Lcu_begin0: 76 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 77.Ldebug_info_start0: 78 .short 5 # DWARF version number 79 .byte 1 # DWARF Unit Type 80 .byte 8 # Address Size (in bytes) 81 .long .debug_abbrev # Offset Into Abbrev. Section 82 .byte 1 # Abbrev [1] 0xb:0x50 DW_TAG_compile_unit 83 .asciz "Hand-written DWARF" # DW_AT_producer 84 .short 12 # DW_AT_language 85 .byte 2 # Abbrev [2] DW_TAG_variable 86 .asciz "integer" # DW_AT_name 87 .long .Latomic_int # DW_AT_type 88 .byte 9 # DW_AT_location 89 .byte 3 90 .quad integer 91 .byte 2 # Abbrev [2] DW_TAG_variable 92 .asciz "structure" # DW_AT_name 93 .long .Latomic_struct # DW_AT_type 94 .byte 9 # DW_AT_location 95 .byte 3 96 .quad structure 97.Latomic_int: 98 .byte 3 # Abbrev [3] DW_TAG_atomic_type 99 .long .Lint # DW_AT_type 100.Lint: 101 .byte 4 # Abbrev [4] 0x53:0x7 DW_TAG_base_type 102 .asciz "int" # DW_AT_name 103 .byte 5 # DW_AT_encoding 104 .byte 4 # DW_AT_byte_size 105.Latomic_struct: 106 .byte 3 # Abbrev [3] DW_TAG_atomic_type 107 .long .Lstruct # DW_AT_type 108.Lstruct: 109 .byte 5 # Abbrev [5] DW_TAG_structure_type 110 .asciz "struct_type" # DW_AT_name 111 .byte 4 # DW_AT_byte_size 112 .byte 6 # Abbrev [6] DW_TAG_member 113 .asciz "member" # DW_AT_name 114 .long .Lint # DW_AT_type 115 .byte 0 # DW_AT_data_member_location 116 .byte 0 # End Of Children Mark 117 .byte 0 # End Of Children Mark 118.Ldebug_info_end0: 119