blob: 9aea4b9027da3aae19f3abf6b66856a45d314a42 [file] [log] [blame]
Duncan P. N. Exon Smith47d829812015-01-14 01:20:27 +00001; RUN: llvm-link %s %S/Inputs/mdlocation.ll -o - -S | FileCheck %s
2
3; Test that MDLocations are remapped properly.
4
Duncan P. N. Exon Smitha5a0f572015-01-14 01:29:32 +00005; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9, !0, !1, !2, !3, !10, !11, !12, !13, !14, !15}
6!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9}
Duncan P. N. Exon Smith47d829812015-01-14 01:20:27 +00007
Duncan P. N. Exon Smith26489982015-03-26 22:05:04 +00008; CHECK: !0 = !MDSubprogram(
Duncan P. N. Exon Smith47d829812015-01-14 01:20:27 +00009; CHECK-NEXT: !1 = !MDLocation(line: 3, column: 7, scope: !0)
10; CHECK-NEXT: !2 = !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !1)
11; CHECK-NEXT: !3 = !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !2)
Duncan P. N. Exon Smith26489982015-03-26 22:05:04 +000012; CHECK-NEXT: !4 = distinct !MDSubprogram(
Duncan P. N. Exon Smith47d829812015-01-14 01:20:27 +000013; CHECK-NEXT: !5 = !MDLocation(line: 3, column: 7, scope: !4)
14; CHECK-NEXT: !6 = !MDLocation(line: 3, column: 7, scope: !4, inlinedAt: !5)
15; CHECK-NEXT: !7 = !MDLocation(line: 3, column: 7, scope: !4, inlinedAt: !6)
Duncan P. N. Exon Smitha5a0f572015-01-14 01:29:32 +000016; CHECK-NEXT: !8 = distinct !MDLocation(line: 3, column: 7, scope: !0)
17; CHECK-NEXT: !9 = distinct !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !8)
Duncan P. N. Exon Smith26489982015-03-26 22:05:04 +000018; CHECK-NEXT: !10 = distinct !MDSubprogram(
Duncan P. N. Exon Smitha5a0f572015-01-14 01:29:32 +000019; CHECK-NEXT: !11 = !MDLocation(line: 3, column: 7, scope: !10)
20; CHECK-NEXT: !12 = !MDLocation(line: 3, column: 7, scope: !10, inlinedAt: !11)
21; CHECK-NEXT: !13 = !MDLocation(line: 3, column: 7, scope: !10, inlinedAt: !12)
22; CHECK-NEXT: !14 = distinct !MDLocation(line: 3, column: 7, scope: !0)
23; CHECK-NEXT: !15 = distinct !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !14)
Duncan P. N. Exon Smith26489982015-03-26 22:05:04 +000024!0 = !MDSubprogram() ; Use this as a scope.
Duncan P. N. Exon Smith47d829812015-01-14 01:20:27 +000025!1 = !MDLocation(line: 3, column: 7, scope: !0)
26!2 = !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !1)
27!3 = !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !2)
Duncan P. N. Exon Smith26489982015-03-26 22:05:04 +000028!4 = distinct !MDSubprogram() ; Test actual remapping.
Duncan P. N. Exon Smith47d829812015-01-14 01:20:27 +000029!5 = !MDLocation(line: 3, column: 7, scope: !4)
30!6 = !MDLocation(line: 3, column: 7, scope: !4, inlinedAt: !5)
31!7 = !MDLocation(line: 3, column: 7, scope: !4, inlinedAt: !6)
Duncan P. N. Exon Smitha5a0f572015-01-14 01:29:32 +000032; Test distinct nodes.
33!8 = distinct !MDLocation(line: 3, column: 7, scope: !0)
34!9 = distinct !MDLocation(line: 3, column: 7, scope: !0, inlinedAt: !8)