1 ; RUN: %llc_dwarf < %s -filetype=obj | llvm-dwarfdump -debug-dump=line - | FileCheck %s
2 ; RUN: %llc_dwarf < %s -filetype=asm | FileCheck --check-prefix=ASM %s
4 ; CHECK: .debug_line contents:
5 ; CHECK-NEXT: Line table prologue:
6 ; CHECK-NOT: include_directories
7 ; CHECK: file_names[ 1] 0 {{.*}} a.cpp
8 ; CHECK-NOT: file_names
10 ; CHECK: Line table prologue:
11 ; CHECK-NOT: include_directories
12 ; CHECK: file_names[ 1] 0 {{.*}} b.cpp
13 ; CHECK-NOT: file_names
15 ; ASM: .file 1 "/tmp/dbginfo/a/a.cpp"
16 ; ASM: .file 2 "/tmp/dbginfo/b/b.cpp"
18 ; Generated from the following source compiled to bitcode from within their
19 ; respective directories (with debug info) and linked together with llvm-link
31 ; Function Attrs: nounwind uwtable
32 define void @_Z4funcv() #0 {
37 ; Function Attrs: uwtable
38 define i32 @main() #1 {
40 call void @_Z4funcv(), !dbg !20
44 attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
45 attributes #1 = { uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
47 !llvm.dbg.cu = !{!0, !8}
48 !llvm.module.flags = !{!16, !17}
49 !llvm.ident = !{!18, !18}
51 !0 = metadata !{i32 786449, metadata !1, i32 4, metadata !"clang version 3.5.0 ", i1 false, metadata !"", i32 0, metadata !2, metadata !2, metadata !3, metadata !2, metadata !2, metadata !"", i32 1}
52 !1 = metadata !{metadata !"a.cpp", metadata !"/tmp/dbginfo/a"}
54 !3 = metadata !{metadata !4}
55 !4 = metadata !{i32 786478, metadata !1, metadata !5, metadata !"func", metadata !"func", metadata !"_Z4funcv", i32 1, metadata !6, i1 false, i1 true, i32 0, i32 0, null, i32 256, i1 false, void ()* @_Z4funcv, null, null, metadata !2, i32 1} ; [ DW_TAG_subprogram ] [line 1] [def] [func]
56 !5 = metadata !{i32 786473, metadata !1} ; [ DW_TAG_file_type ] [/tmp/dbginfo/a/a.cpp]
57 !6 = metadata !{i32 786453, i32 0, null, metadata !"", i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !7, i32 0, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
59 !8 = metadata !{i32 786449, metadata !9, i32 4, metadata !"clang version 3.5.0 ", i1 false, metadata !"", i32 0, metadata !2, metadata !2, metadata !10, metadata !2, metadata !2, metadata !"", i32 1}
60 !9 = metadata !{metadata !"b.cpp", metadata !"/tmp/dbginfo/b"}
61 !10 = metadata !{metadata !11}
62 !11 = metadata !{i32 786478, metadata !9, metadata !12, metadata !"main", metadata !"main", metadata !"", i32 2, metadata !13, i1 false, i1 true, i32 0, i32 0, null, i32 256, i1 false, i32 ()* @main, null, null, metadata !2, i32 2} ; [ DW_TAG_subprogram ] [line 2] [def] [main]
63 !12 = metadata !{i32 786473, metadata !9} ; [ DW_TAG_file_type ] [/tmp/dbginfo/b/b.cpp]
64 !13 = metadata !{i32 786453, i32 0, null, metadata !"", i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !14, i32 0, null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
65 !14 = metadata !{metadata !15}
66 !15 = metadata !{i32 786468, null, null, metadata !"int", i32 0, i64 32, i64 32, i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc DW_ATE_signed]
67 !16 = metadata !{i32 2, metadata !"Dwarf Version", i32 4}
68 !17 = metadata !{i32 1, metadata !"Debug Info Version", i32 1}
69 !18 = metadata !{metadata !"clang version 3.5.0 "}
70 !19 = metadata !{i32 2, i32 0, metadata !4, null}
71 !20 = metadata !{i32 3, i32 0, metadata !11, null}
72 !21 = metadata !{i32 4, i32 0, metadata !11, null}