blob: c6f0afa27937267700bff5990439ed67b37eac35 [file] [log] [blame]
David Blaikie5477b972017-04-22 08:17:39 +00001; RUN: llc -mtriple=x86_64-linux -split-dwarf-file=foo.dwo -filetype=obj -o - < %s | llvm-objdump -r - | FileCheck %s
David Blaikie85366ac2017-04-22 07:53:44 +00002
David Blaikie5477b972017-04-22 08:17:39 +00003; CHECK-NOT: .rel{{a?}}.debug_info.dwo
4; CHECK: RELOCATION RECORDS FOR [.rel{{a?}}.debug_info]:
David Blaikie85366ac2017-04-22 07:53:44 +00005; CHECK-NOT: RELOCATION RECORDS
6; Expect one relocation in debug_info, between f3 and f1.
7; CHECK: R_X86_64_32 .debug_info
8; CHECK-NOT: .debug_info
9; CHECK: RELOCATION RECORDS
David Blaikie5477b972017-04-22 08:17:39 +000010; CHECK-NOT: .rel{{a?}}.debug_info.dwo
David Blaikie85366ac2017-04-22 07:53:44 +000011
12
13; Function Attrs: noinline nounwind optnone uwtable
14define void @_Z2f1v() !dbg !7 {
15entry:
16 ret void, !dbg !10
17}
18
19; Function Attrs: noinline uwtable
20define void @_Z2f3v() !dbg !13 {
21entry:
22 call void @_Z2f1v(), !dbg !14
23 ret void, !dbg !16
24}
25
26!llvm.dbg.cu = !{!0, !3}
27!llvm.ident = !{!5, !5}
28!llvm.module.flags = !{!6}
29
30!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "clang version 5.0.0 (trunk 301051) (llvm/trunk 301062)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2)
31!1 = !DIFile(filename: "a.cpp", directory: "/usr/local/google/home/blaikie/dev/scratch")
32!2 = !{}
33!3 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !4, producer: "clang version 5.0.0 (trunk 301051) (llvm/trunk 301062)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2)
34!4 = !DIFile(filename: "b.cpp", directory: "/usr/local/google/home/blaikie/dev/scratch")
35!5 = !{!"clang version 5.0.0 (trunk 301051) (llvm/trunk 301062)"}
36!6 = !{i32 2, !"Debug Info Version", i32 3}
37!7 = distinct !DISubprogram(name: "f1", linkageName: "_Z2f1v", scope: !1, file: !1, line: 1, type: !8, isLocal: false, isDefinition: true, scopeLine: 1, flags: DIFlagPrototyped, isOptimized: false, unit: !0, variables: !2)
38!8 = !DISubroutineType(types: !9)
39!9 = !{null}
40!10 = !DILocation(line: 1, scope: !7)
41!11 = distinct !DISubprogram(name: "f2", linkageName: "_Z2f2v", scope: !1, file: !1, line: 1, type: !8, isLocal: false, isDefinition: true, scopeLine: 1, flags: DIFlagPrototyped, isOptimized: false, unit: !0, variables: !2)
42!12 = !DILocation(line: 1, scope: !11)
43!13 = distinct !DISubprogram(name: "f3", linkageName: "_Z2f3v", scope: !4, file: !4, line: 1, type: !8, isLocal: false, isDefinition: true, scopeLine: 1, flags: DIFlagPrototyped, isOptimized: false, unit: !3, variables: !2)
44!14 = !DILocation(line: 1, scope: !11, inlinedAt: !15)
45!15 = distinct !DILocation(line: 1, scope: !13)
46!16 = !DILocation(line: 1, scope: !13)