1 # Test that parsing of line tables works reasonably. In this case the debug info
2 # does not have enough information for our heuristics to determine the path
3 # style, so we will just treat them as native host paths.
7 # RUN: llvm-mc -triple x86_64-pc-linux %s -filetype=obj > %t.o
8 # RUN: ld.lld %t.o -o %t -z separate-code
9 # RUN: %lldb %t -s %S/Inputs/dir-separator-no-comp-dir-relative-name.lldbinit -o exit | FileCheck %s
11 # CHECK-LABEL: image dump line-table a.c
12 # CHECK: Line table for foo{{.}}a.c
13 # CHECK-NEXT: 0x0000000000201000: foo{{.}}a.c:1
14 # CHECK-NEXT: 0x0000000000201001: foo{{.}}b.c:1
15 # CHECK-NEXT: 0x0000000000201002: foo{{.}}b.c:1
18 # CHECK-LABEL: breakpoint set -f a.c -l 1
19 # CHECK: Breakpoint 1: {{.*}}`_start,
21 # CHECK-LABEL: breakpoint set -f foo/b.c -l 1
22 # CHECK: Breakpoint 2: {{.*}}`_start + 1,
34 .section .debug_str,"MS",@progbits,1
37 .section .debug_abbrev,"",@progbits
38 .byte 1 # Abbreviation Code
39 .byte 17 # DW_TAG_compile_unit
40 .byte 0 # DW_CHILDREN_no
41 .byte 19 # DW_AT_language
42 .byte 5 # DW_FORM_data2
44 .byte 14 # DW_FORM_strp
45 .byte 16 # DW_AT_stmt_list
46 .byte 23 # DW_FORM_sec_offset
50 .section .debug_info,"",@progbits
52 .long .Lcu_end0-.Lcu_start0 # Length of Unit
54 .short 4 # DWARF version number
55 .long .debug_abbrev # Offset Into Abbrev. Section
56 .byte 8 # Address Size (in bytes)
57 .byte 1 # Abbrev [1] 0xb:0x1f DW_TAG_compile_unit
58 .short 12 # DW_AT_language
59 .long .Linfo_string1 # DW_AT_name
60 .long .Lline_table_start0 # DW_AT_stmt_list
62 .section .debug_line,"",@progbits