Duncan P. N. Exon Smith | 3408708 | 2015-01-08 22:42:30 +0000 | [diff] [blame] | 1 | ; RUN: llvm-link %s %S/Inputs/distinct.ll -o - -S | FileCheck %s |
| 2 | |
| 3 | ; Test that distinct nodes from other modules remain distinct. The @global |
| 4 | ; cases are the most interesting, since the operands actually need to be |
| 5 | ; remapped. |
| 6 | |
| 7 | ; CHECK: @global = linkonce global i32 0 |
| 8 | @global = linkonce global i32 0 |
Teresa Johnson | 99ee897 | 2015-11-06 17:50:53 +0000 | [diff] [blame] | 9 | ; Add an external reference to @global so that it gets linked in. |
| 10 | @alias = alias i32, i32* @global |
Duncan P. N. Exon Smith | 3408708 | 2015-01-08 22:42:30 +0000 | [diff] [blame] | 11 | |
| 12 | ; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !0, !1, !2, !9, !10, !11, !12, !13, !14} |
| 13 | !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} |
| 14 | |
| 15 | ; CHECK: !0 = !{} |
| 16 | ; CHECK-NEXT: !1 = !{!0} |
| 17 | ; CHECK-NEXT: !2 = !{i32* @global} |
| 18 | ; CHECK-NEXT: !3 = distinct !{} |
| 19 | ; CHECK-NEXT: !4 = distinct !{!0} |
| 20 | ; CHECK-NEXT: !5 = distinct !{i32* @global} |
| 21 | ; CHECK-NEXT: !6 = !{!3} |
| 22 | ; CHECK-NEXT: !7 = !{!4} |
| 23 | ; CHECK-NEXT: !8 = !{!5} |
| 24 | ; CHECK-NEXT: !9 = distinct !{} |
| 25 | ; CHECK-NEXT: !10 = distinct !{!0} |
| 26 | ; CHECK-NEXT: !11 = distinct !{i32* @global} |
| 27 | ; CHECK-NEXT: !12 = !{!9} |
| 28 | ; CHECK-NEXT: !13 = !{!10} |
| 29 | ; CHECK-NEXT: !14 = !{!11} |
| 30 | ; CHECK-NOT: ! |
| 31 | !0 = !{} |
| 32 | !1 = !{!0} |
| 33 | !2 = !{i32* @global} |
| 34 | !3 = distinct !{} |
| 35 | !4 = distinct !{!0} |
| 36 | !5 = distinct !{i32* @global} |
| 37 | !6 = !{!3} |
| 38 | !7 = !{!4} |
| 39 | !8 = !{!5} |