1*8a64d80aSDavid Spickett# Test handling of DWARF5 file index 0. 2*8a64d80aSDavid Spickett 3*8a64d80aSDavid Spickett# RUN: llvm-mc -filetype=obj -o %t -triple x86_64-pc-linux %s 4*8a64d80aSDavid Spickett# RUN: %lldb %t -o "image lookup -f hello.c -l 1" \ 5*8a64d80aSDavid Spickett# RUN: -o exit | FileCheck %s 6*8a64d80aSDavid Spickett 7*8a64d80aSDavid Spickett# CHECK: 2 matches found in hello.c:1 8*8a64d80aSDavid Spickett .text 9*8a64d80aSDavid Spickett.Lfunc_begin0: 10*8a64d80aSDavid Spickett .file 0 "." "hello.c" 11*8a64d80aSDavid Spickett .loc 0 1 0 # hello.c:1:0 12*8a64d80aSDavid Spickett nop 13*8a64d80aSDavid Spickett .loc 0 1 13 prologue_end # hello.c:1:13 14*8a64d80aSDavid Spickett nop 15*8a64d80aSDavid Spickett.Lfunc_end0: 16*8a64d80aSDavid Spickett .section .debug_abbrev,"",@progbits 17*8a64d80aSDavid Spickett .byte 1 # Abbreviation Code 18*8a64d80aSDavid Spickett .byte 17 # DW_TAG_compile_unit 19*8a64d80aSDavid Spickett .byte 0 # DW_CHILDREN_no 20*8a64d80aSDavid Spickett .byte 37 # DW_AT_producer 21*8a64d80aSDavid Spickett .byte 37 # DW_FORM_strx1 22*8a64d80aSDavid Spickett .byte 19 # DW_AT_language 23*8a64d80aSDavid Spickett .byte 5 # DW_FORM_data2 24*8a64d80aSDavid Spickett .byte 3 # DW_AT_name 25*8a64d80aSDavid Spickett .byte 37 # DW_FORM_strx1 26*8a64d80aSDavid Spickett .byte 114 # DW_AT_str_offsets_base 27*8a64d80aSDavid Spickett .byte 23 # DW_FORM_sec_offset 28*8a64d80aSDavid Spickett .byte 16 # DW_AT_stmt_list 29*8a64d80aSDavid Spickett .byte 23 # DW_FORM_sec_offset 30*8a64d80aSDavid Spickett .byte 27 # DW_AT_comp_dir 31*8a64d80aSDavid Spickett .byte 37 # DW_FORM_strx1 32*8a64d80aSDavid Spickett .byte 17 # DW_AT_low_pc 33*8a64d80aSDavid Spickett .byte 27 # DW_FORM_addrx 34*8a64d80aSDavid Spickett .byte 18 # DW_AT_high_pc 35*8a64d80aSDavid Spickett .byte 6 # DW_FORM_data4 36*8a64d80aSDavid Spickett .byte 115 # DW_AT_addr_base 37*8a64d80aSDavid Spickett .byte 23 # DW_FORM_sec_offset 38*8a64d80aSDavid Spickett .byte 0 # EOM(1) 39*8a64d80aSDavid Spickett .byte 0 # EOM(2) 40*8a64d80aSDavid Spickett .byte 0 # EOM(3) 41*8a64d80aSDavid Spickett .section .debug_info,"",@progbits 42*8a64d80aSDavid Spickett.Lcu_begin0: 43*8a64d80aSDavid Spickett .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 44*8a64d80aSDavid Spickett.Ldebug_info_start0: 45*8a64d80aSDavid Spickett .short 5 # DWARF version number 46*8a64d80aSDavid Spickett .byte 1 # DWARF Unit Type 47*8a64d80aSDavid Spickett .byte 8 # Address Size (in bytes) 48*8a64d80aSDavid Spickett .long .debug_abbrev # Offset Into Abbrev. Section 49*8a64d80aSDavid Spickett .byte 1 # Abbrev [1] 0xc:0x2b DW_TAG_compile_unit 50*8a64d80aSDavid Spickett .byte 0 # DW_AT_producer 51*8a64d80aSDavid Spickett .short 12 # DW_AT_language 52*8a64d80aSDavid Spickett .byte 1 # DW_AT_name 53*8a64d80aSDavid Spickett .long .Lstr_offsets_base0 # DW_AT_str_offsets_base 54*8a64d80aSDavid Spickett .long .Lline_table_start0 # DW_AT_stmt_list 55*8a64d80aSDavid Spickett .byte 2 # DW_AT_comp_dir 56*8a64d80aSDavid Spickett .byte 0 # DW_AT_low_pc 57*8a64d80aSDavid Spickett .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 58*8a64d80aSDavid Spickett .long .Laddr_table_base0 # DW_AT_addr_base 59*8a64d80aSDavid Spickett.Ldebug_info_end0: 60*8a64d80aSDavid Spickett .section .debug_str_offsets,"",@progbits 61*8a64d80aSDavid Spickett .long 12 # Length of String Offsets Set 62*8a64d80aSDavid Spickett .short 5 63*8a64d80aSDavid Spickett .short 0 64*8a64d80aSDavid Spickett.Lstr_offsets_base0: 65*8a64d80aSDavid Spickett .section .debug_str,"MS",@progbits,1 66*8a64d80aSDavid Spickett.Linfo_string0: 67*8a64d80aSDavid Spickett .asciz "" # string offset=0 68*8a64d80aSDavid Spickett.Linfo_string1: 69*8a64d80aSDavid Spickett .asciz "hello.c" # string offset=101 70*8a64d80aSDavid Spickett.Linfo_string2: 71*8a64d80aSDavid Spickett .asciz "." # string offset=109 72*8a64d80aSDavid Spickett .section .debug_str_offsets,"",@progbits 73*8a64d80aSDavid Spickett .long .Linfo_string0 74*8a64d80aSDavid Spickett .long .Linfo_string1 75*8a64d80aSDavid Spickett .long .Linfo_string2 76*8a64d80aSDavid Spickett .section .debug_addr,"",@progbits 77*8a64d80aSDavid Spickett.Ldebug_addr_start0: 78*8a64d80aSDavid Spickett .short 5 # DWARF version number 79*8a64d80aSDavid Spickett .byte 8 # Address size 80*8a64d80aSDavid Spickett .byte 0 # Segment selector size 81*8a64d80aSDavid Spickett.Laddr_table_base0: 82*8a64d80aSDavid Spickett .quad .Lfunc_begin0 83*8a64d80aSDavid Spickett.Ldebug_addr_end0: 84*8a64d80aSDavid Spickett .section .debug_line,"",@progbits 85*8a64d80aSDavid Spickett.Lline_table_start0: 86