105 lines · plain
1# RUN: llvm-mc -triple=x86_64-pc-linux -filetype=obj %s > %t2# RUN: %lldb %t -o "image lookup -v -s lookup_rnglists" \3# RUN: -o exit | FileCheck %s4 5# CHECK-LABEL: image lookup -v -s lookup_rnglists6# CHECK: Function: id = {0x0000002d}, name = "rnglists", range = [0x0000000000000000-0x0000000000000003)7# CHECK: Blocks: id = {0x0000002d}, range = [0x00000000-0x00000003)8# CHECK-NEXT: id = {0x00000043}, range = [0x00000001-0x00000002)9 10 .text11rnglists:12 nop13.Lblock1_begin:14lookup_rnglists:15 nop16.Lblock1_end:17 nop18.Lrnglists_end:19 20 .section .debug_abbrev,"",@progbits21 .byte 1 # Abbreviation Code22 .byte 17 # DW_TAG_compile_unit23 .byte 1 # DW_CHILDREN_yes24 .byte 37 # DW_AT_producer25 .byte 8 # DW_FORM_string26 .byte 17 # DW_AT_low_pc27 .byte 27 # DW_FORM_addrx28 .byte 18 # DW_AT_high_pc29 .byte 6 # DW_FORM_data430 .byte 116 # DW_AT_rnglists_base31 .byte 23 # DW_FORM_sec_offset32 .byte 115 # DW_AT_addr_base33 .byte 23 # DW_FORM_sec_offset34 .byte 0 # EOM(1)35 .byte 0 # EOM(2)36 .byte 2 # Abbreviation Code37 .byte 46 # DW_TAG_subprogram38 .byte 1 # DW_CHILDREN_yes39 .byte 17 # DW_AT_low_pc40 .byte 1 # DW_FORM_addr41 .byte 18 # DW_AT_high_pc42 .byte 6 # DW_FORM_data443 .byte 3 # DW_AT_name44 .byte 8 # DW_FORM_string45 .byte 0 # EOM(1)46 .byte 0 # EOM(2)47 .byte 5 # Abbreviation Code48 .byte 11 # DW_TAG_lexical_block49 .byte 0 # DW_CHILDREN_no50 .byte 85 # DW_AT_ranges51 .byte 35 # DW_FORM_rnglistx52 .byte 0 # EOM(1)53 .byte 0 # EOM(2)54 .byte 0 # EOM(3)55 56 .section .debug_info,"",@progbits57.Lcu_begin0:58 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit59.Ldebug_info_start0:60 .short 5 # DWARF version number61 .byte 1 # DWARF Unit Type62 .byte 8 # Address Size (in bytes)63 .long .debug_abbrev # Offset Into Abbrev. Section64 .byte 1 # Abbrev [1] 0xc:0x5f DW_TAG_compile_unit65 .asciz "Hand-written DWARF" # DW_AT_producer66 .byte 0 # DW_AT_low_pc67 .long .Lrnglists_end-rnglists # DW_AT_high_pc68 .long .Lrnglists_table_base0 # DW_AT_rnglists_base69 .long .Laddr_table_base0 # DW_AT_addr_base70 .byte 2 # Abbrev [2] 0x2b:0x37 DW_TAG_subprogram71 .quad rnglists # DW_AT_low_pc72 .long .Lrnglists_end-rnglists # DW_AT_high_pc73 .asciz "rnglists" # DW_AT_name74 .byte 5 # Abbrev [5] 0x52:0xf DW_TAG_lexical_block75 .byte 0 # DW_AT_ranges76 .byte 0 # End Of Children Mark77 .byte 0 # End Of Children Mark78.Ldebug_info_end0:79 80 .section .debug_addr,"",@progbits81 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution82.Ldebug_addr_start0:83 .short 5 # DWARF version number84 .byte 8 # Address size85 .byte 0 # Segment selector size86.Laddr_table_base0:87 .quad rnglists88.Ldebug_addr_end0:89 90 .section .debug_rnglists,"",@progbits91 .long .Ldebug_rnglist_table_end0-.Ldebug_rnglist_table_start0 # Length92.Ldebug_rnglist_table_start0:93 .short 5 # Version94 .byte 8 # Address size95 .byte 0 # Segment selector size96 .long 1 # Offset entry count97.Lrnglists_table_base0:98 .long .Ldebug_ranges0-.Lrnglists_table_base099.Ldebug_ranges0:100 .byte 4 # DW_RLE_offset_pair101 .uleb128 .Lblock1_begin-rnglists # starting offset102 .uleb128 .Lblock1_end-rnglists # ending offset103 .byte 0 # DW_RLE_end_of_list104.Ldebug_rnglist_table_end0:105