David Blaikie | 5477b97 | 2017-04-22 08:17:39 +0000 | [diff] [blame^] | 1 | ; RUN: llc -mtriple=x86_64-linux -split-dwarf-file=foo.dwo -filetype=obj -o - < %s | llvm-objdump -r - | FileCheck %s |
David Blaikie | 85366ac | 2017-04-22 07:53:44 +0000 | [diff] [blame] | 2 | |
David Blaikie | 5477b97 | 2017-04-22 08:17:39 +0000 | [diff] [blame^] | 3 | ; CHECK-NOT: .rel{{a?}}.debug_info.dwo |
| 4 | ; CHECK: RELOCATION RECORDS FOR [.rel{{a?}}.debug_info]: |
David Blaikie | 85366ac | 2017-04-22 07:53:44 +0000 | [diff] [blame] | 5 | ; 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 Blaikie | 5477b97 | 2017-04-22 08:17:39 +0000 | [diff] [blame^] | 10 | ; CHECK-NOT: .rel{{a?}}.debug_info.dwo |
David Blaikie | 85366ac | 2017-04-22 07:53:44 +0000 | [diff] [blame] | 11 | |
| 12 | |
| 13 | ; Function Attrs: noinline nounwind optnone uwtable |
| 14 | define void @_Z2f1v() !dbg !7 { |
| 15 | entry: |
| 16 | ret void, !dbg !10 |
| 17 | } |
| 18 | |
| 19 | ; Function Attrs: noinline uwtable |
| 20 | define void @_Z2f3v() !dbg !13 { |
| 21 | entry: |
| 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) |