1*fa822a2eSPaul Robinson## Demonstrate dumping DW_AT_defaulted. 2*fa822a2eSPaul Robinson## Any ELF-target triple will work. 3*fa822a2eSPaul Robinson# RUN: llvm-mc -triple=x86_64--linux -filetype=obj < %s | \ 4*fa822a2eSPaul Robinson# RUN: llvm-dwarfdump -v - | FileCheck %s 5*fa822a2eSPaul Robinson 6*fa822a2eSPaul Robinson# CHECK: .debug_abbrev contents: 7*fa822a2eSPaul Robinson# CHECK: DW_AT_defaulted DW_FORM_data1 8*fa822a2eSPaul Robinson# CHECK: .debug_info contents: 9*fa822a2eSPaul Robinson# CHECK: DW_AT_defaulted [DW_FORM_data1] (DW_DEFAULTED_no) 10*fa822a2eSPaul Robinson# CHECK: DW_AT_defaulted [DW_FORM_data1] (DW_DEFAULTED_in_class) 11*fa822a2eSPaul Robinson# CHECK: DW_AT_defaulted [DW_FORM_data1] (DW_DEFAULTED_out_of_class) 12*fa822a2eSPaul Robinson 13*fa822a2eSPaul Robinson .section .debug_abbrev,"",@progbits 14*fa822a2eSPaul Robinson .byte 1 # Abbreviation Code 15*fa822a2eSPaul Robinson .byte 17 # DW_TAG_compile_unit 16*fa822a2eSPaul Robinson .byte 1 # DW_CHILDREN_yes 17*fa822a2eSPaul Robinson .byte 0 # EOM(1) 18*fa822a2eSPaul Robinson .byte 0 # EOM(2) 19*fa822a2eSPaul Robinson .byte 2 # Abbreviation Code 20*fa822a2eSPaul Robinson .byte 46 # DW_TAG_subprogram 21*fa822a2eSPaul Robinson .byte 0 # DW_CHILDREN_no 22*fa822a2eSPaul Robinson .byte 0x8b, 1 # DW_AT_defaulted (ULEB) 23*fa822a2eSPaul Robinson .byte 11 # DW_FORM_data1 24*fa822a2eSPaul Robinson .byte 0 # EOM(1) 25*fa822a2eSPaul Robinson .byte 0 # EOM(2) 26*fa822a2eSPaul Robinson .byte 0 # EOM(3) 27*fa822a2eSPaul Robinson 28*fa822a2eSPaul Robinson .section .debug_info,"",@progbits 29*fa822a2eSPaul Robinson .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 30*fa822a2eSPaul Robinson.Ldebug_info_start0: 31*fa822a2eSPaul Robinson .short 5 # DWARF version number 32*fa822a2eSPaul Robinson .byte 1 # Unit type 33*fa822a2eSPaul Robinson .byte 8 # Address Size (in bytes) 34*fa822a2eSPaul Robinson .long .debug_abbrev # Offset Into Abbrev. Section 35*fa822a2eSPaul Robinson .byte 1 # Abbrev [1] DW_TAG_compile_unit 36*fa822a2eSPaul Robinson .byte 2 # Abbrev [2] DW_TAG_subprogram 37*fa822a2eSPaul Robinson .byte 0 # DW_DEFAULTED_no 38*fa822a2eSPaul Robinson .byte 2 # Abbrev [2] DW_TAG_subprogram 39*fa822a2eSPaul Robinson .byte 1 # DW_DEFAULTED_in_class 40*fa822a2eSPaul Robinson .byte 2 # Abbrev [2] DW_TAG_subprogram 41*fa822a2eSPaul Robinson .byte 2 # DW_DEFAULTED_out_of_class 42*fa822a2eSPaul Robinson .byte 0 # End Of Children Mark 43*fa822a2eSPaul Robinson.Ldebug_info_end0: 44