@@ -47,87 +47,46 @@ body: |
47
47
name : live_through_test
48
48
tracksRegLiveness : true
49
49
body : |
50
- ; RPU-LABEL: name: live_through_test
51
- ; RPU: bb.0:
52
- ; RPU-NEXT: Live-in:
53
- ; RPU-NEXT: SGPR VGPR
54
- ; RPU-NEXT: 0 0
55
- ; RPU-NEXT: 3 0 %0:sgpr_128 = IMPLICIT_DEF
56
- ; RPU-NEXT: 3 0
57
- ; RPU-NEXT: Live-out: %0:00000000000000F3
58
- ; RPU-NEXT: Live-thr:
59
- ; RPU-NEXT: 0 0
60
- ; RPU-NEXT: bb.1:
61
- ; RPU-NEXT: Live-in: %0:00000000000000F3
62
- ; RPU-NEXT: SGPR VGPR
63
- ; RPU-NEXT: 3 0
64
- ; RPU-NEXT: 3 0 S_NOP 0, implicit %0.sub0:sgpr_128
65
- ; RPU-NEXT: 2 0
66
- ; RPU-NEXT: 3 0 %0.sub0:sgpr_128 = IMPLICIT_DEF
67
- ; RPU-NEXT: 3 0
68
- ; RPU-NEXT: 3 0 %0.sub1:sgpr_128 = IMPLICIT_DEF
69
- ; RPU-NEXT: 3 0
70
- ; RPU-NEXT: 3 0 S_NOP 0, implicit %0.sub2:sgpr_128
71
- ; RPU-NEXT: 2 0
72
- ; RPU-NEXT: 3 0 %0.sub2:sgpr_128 = IMPLICIT_DEF
73
- ; RPU-NEXT: 3 0
74
- ; RPU-NEXT: 3 0 S_NOP 0, implicit %0.sub2:sgpr_128
75
- ; RPU-NEXT: 2 0
76
- ; RPU-NEXT: 2 0 S_NOP 0, implicit %0.sub3:sgpr_128
77
- ; RPU-NEXT: 2 0
78
- ; RPU-NEXT: Live-out: %0:00000000000000C3
79
- ; RPU-NEXT: Live-thr: %0:00000000000000C0
80
- ; RPU-NEXT: 1 0
81
- ; RPU-NEXT: bb.2:
82
- ; RPU-NEXT: Live-in: %0:00000000000000C3
83
- ; RPU-NEXT: SGPR VGPR
84
- ; RPU-NEXT: 2 0
85
- ; RPU-NEXT: 2 0 S_NOP 0, implicit %0.sub3:sgpr_128, implicit %0.sub0:sgpr_128
86
- ; RPU-NEXT: 0 0
87
- ; RPU-NEXT: Live-out:
88
- ; RPU-NEXT: Live-thr:
89
- ; RPU-NEXT: 0 0
90
- ;
91
- ; RPD-LABEL: name: live_through_test
92
- ; RPD: bb.0:
93
- ; RPD-NEXT: Live-in:
94
- ; RPD-NEXT: SGPR VGPR
95
- ; RPD-NEXT: 0 0
96
- ; RPD-NEXT: 4 0 %0:sgpr_128 = IMPLICIT_DEF
97
- ; RPD-NEXT: 3 0
98
- ; RPD-NEXT: Live-out: %0:00000000000000F3
99
- ; RPD-NEXT: Live-thr:
100
- ; RPD-NEXT: 0 0
101
- ; RPD-NEXT: bb.1:
102
- ; RPD-NEXT: Live-in: %0:00000000000000F3
103
- ; RPD-NEXT: SGPR VGPR
104
- ; RPD-NEXT: 3 0
105
- ; RPD-NEXT: 3 0 S_NOP 0, implicit %0.sub0:sgpr_128
106
- ; RPD-NEXT: 2 0
107
- ; RPD-NEXT: 3 0 %0.sub0:sgpr_128 = IMPLICIT_DEF
108
- ; RPD-NEXT: 3 0
109
- ; RPD-NEXT: 4 0 %0.sub1:sgpr_128 = IMPLICIT_DEF
110
- ; RPD-NEXT: 3 0
111
- ; RPD-NEXT: 3 0 S_NOP 0, implicit %0.sub2:sgpr_128
112
- ; RPD-NEXT: 2 0
113
- ; RPD-NEXT: 3 0 %0.sub2:sgpr_128 = IMPLICIT_DEF
114
- ; RPD-NEXT: 3 0
115
- ; RPD-NEXT: 3 0 S_NOP 0, implicit %0.sub2:sgpr_128
116
- ; RPD-NEXT: 2 0
117
- ; RPD-NEXT: 2 0 S_NOP 0, implicit %0.sub3:sgpr_128
118
- ; RPD-NEXT: 2 0
119
- ; RPD-NEXT: Live-out: %0:00000000000000C3
120
- ; RPD-NEXT: Live-thr: %0:00000000000000C0
121
- ; RPD-NEXT: 1 0
122
- ; RPD-NEXT: bb.2:
123
- ; RPD-NEXT: Live-in: %0:00000000000000C3
124
- ; RPD-NEXT: SGPR VGPR
125
- ; RPD-NEXT: 2 0
126
- ; RPD-NEXT: 2 0 S_NOP 0, implicit %0.sub3:sgpr_128, implicit %0.sub0:sgpr_128
127
- ; RPD-NEXT: 0 0
128
- ; RPD-NEXT: Live-out:
129
- ; RPD-NEXT: Live-thr:
130
- ; RPD-NEXT: 0 0
50
+ ; RP-LABEL: name: live_through_test
51
+ ; RP: bb.0:
52
+ ; RP-NEXT: Live-in:
53
+ ; RP-NEXT: SGPR VGPR
54
+ ; RP-NEXT: 0 0
55
+ ; RP-NEXT: 4 0 %0:sgpr_128 = IMPLICIT_DEF
56
+ ; RP-NEXT: 3 0
57
+ ; RP-NEXT: Live-out: %0:00000000000000F3
58
+ ; RP-NEXT: Live-thr:
59
+ ; RP-NEXT: 0 0
60
+ ; RP-NEXT: bb.1:
61
+ ; RP-NEXT: Live-in: %0:00000000000000F3
62
+ ; RP-NEXT: SGPR VGPR
63
+ ; RP-NEXT: 3 0
64
+ ; RP-NEXT: 3 0 S_NOP 0, implicit %0.sub0:sgpr_128
65
+ ; RP-NEXT: 2 0
66
+ ; RP-NEXT: 3 0 %0.sub0:sgpr_128 = IMPLICIT_DEF
67
+ ; RP-NEXT: 3 0
68
+ ; RP-NEXT: 4 0 %0.sub1:sgpr_128 = IMPLICIT_DEF
69
+ ; RP-NEXT: 3 0
70
+ ; RP-NEXT: 3 0 S_NOP 0, implicit %0.sub2:sgpr_128
71
+ ; RP-NEXT: 2 0
72
+ ; RP-NEXT: 3 0 %0.sub2:sgpr_128 = IMPLICIT_DEF
73
+ ; RP-NEXT: 3 0
74
+ ; RP-NEXT: 3 0 S_NOP 0, implicit %0.sub2:sgpr_128
75
+ ; RP-NEXT: 2 0
76
+ ; RP-NEXT: 2 0 S_NOP 0, implicit %0.sub3:sgpr_128
77
+ ; RP-NEXT: 2 0
78
+ ; RP-NEXT: Live-out: %0:00000000000000C3
79
+ ; RP-NEXT: Live-thr: %0:00000000000000C0
80
+ ; RP-NEXT: 1 0
81
+ ; RP-NEXT: bb.2:
82
+ ; RP-NEXT: Live-in: %0:00000000000000C3
83
+ ; RP-NEXT: SGPR VGPR
84
+ ; RP-NEXT: 2 0
85
+ ; RP-NEXT: 2 0 S_NOP 0, implicit %0.sub3:sgpr_128, implicit %0.sub0:sgpr_128
86
+ ; RP-NEXT: 0 0
87
+ ; RP-NEXT: Live-out:
88
+ ; RP-NEXT: Live-thr:
89
+ ; RP-NEXT: 0 0
131
90
bb.0:
132
91
%0:sgpr_128 = IMPLICIT_DEF
133
92
bb.1:
@@ -223,7 +182,7 @@ body: |
223
182
; RPU-NEXT: 0 7
224
183
; RPU-NEXT: 0 7 %7:vgpr_32 = GLOBAL_LOAD_DWORD %5:vreg_64, 0, 0, implicit $exec
225
184
; RPU-NEXT: 0 6
226
- ; RPU-NEXT: 0 7 %8:vreg_64 = IMPLICIT_DEF
185
+ ; RPU-NEXT: 0 8 %8:vreg_64 = IMPLICIT_DEF
227
186
; RPU-NEXT: 0 7
228
187
; RPU-NEXT: 0 9 %9:vreg_64 = IMPLICIT_DEF
229
188
; RPU-NEXT: 0 9
@@ -262,7 +221,7 @@ body: |
262
221
; RPU-NEXT: 0 12
263
222
; RPU-NEXT: 0 12 dead %21:vgpr_32 = GLOBAL_LOAD_DWORD %14:vreg_64, 0, 0, implicit $exec
264
223
; RPU-NEXT: 0 10
265
- ; RPU-NEXT: 0 10 dead %22:vgpr_32 = GLOBAL_LOAD_DWORD %15:vreg_64, 0, 0, implicit $exec
224
+ ; RPU-NEXT: 0 11 dead %22:vgpr_32 = GLOBAL_LOAD_DWORD %15:vreg_64, 0, 0, implicit $exec
266
225
; RPU-NEXT: 0 10
267
226
; RPU-NEXT: 0 10 %23:vreg_64 = V_LSHLREV_B64_e64 2, %8:vreg_64, implicit $exec
268
227
; RPU-NEXT: 0 9
@@ -550,7 +509,7 @@ body: |
550
509
; RPU-NEXT: 0 0
551
510
; RPU-NEXT: 0 0 $sgpr0 = S_BUFFER_LOAD_DWORD_IMM $sgpr0_sgpr1_sgpr2_sgpr3, 0, 0
552
511
; RPU-NEXT: 0 0
553
- ; RPU-NEXT: 0 0 undef %0.sub5:vreg_512 = V_MOV_B32_e32 5, implicit $exec
512
+ ; RPU-NEXT: 0 1 undef %0.sub5:vreg_512 = V_MOV_B32_e32 5, implicit $exec
554
513
; RPU-NEXT: 0 0
555
514
; RPU-NEXT: 0 0 S_CMP_GT_U32 $sgpr0, 15, implicit-def $scc
556
515
; RPU-NEXT: 0 0
@@ -569,7 +528,7 @@ body: |
569
528
; RPU-NEXT: 0 1
570
529
; RPU-NEXT: 0 1 $m0 = S_MOV_B32 killed $sgpr0
571
530
; RPU-NEXT: 0 1
572
- ; RPU-NEXT: 0 1 %0:vreg_512 = V_INDIRECT_REG_WRITE_MOVREL_B32_V16 %0:vreg_512(tied-def 0), 42, 3, implicit $m0, implicit $exec
531
+ ; RPU-NEXT: 0 16 %0:vreg_512 = V_INDIRECT_REG_WRITE_MOVREL_B32_V16 %0:vreg_512(tied-def 0), 42, 3, implicit $m0, implicit $exec
573
532
; RPU-NEXT: 0 1
574
533
; RPU-NEXT: Live-out: %0:0000000000000C00
575
534
; RPU-NEXT: Live-thr:
@@ -709,33 +668,19 @@ tracksRegLiveness: true
709
668
body : |
710
669
bb.0:
711
670
liveins: $sgpr0_sgpr1_sgpr2_sgpr3
712
- ; RPU-LABEL: name: test_partially_used_early_clobber_def
713
- ; RPU: Live-in:
714
- ; RPU-NEXT: SGPR VGPR
715
- ; RPU-NEXT: 0 0
716
- ; RPU-NEXT: 4 0 %0:sgpr_128 = COPY $sgpr0_sgpr1_sgpr2_sgpr3
717
- ; RPU-NEXT: 4 0
718
- ; RPU-NEXT: 5 0 early-clobber %1:sgpr_128 = COPY %0:sgpr_128
719
- ; RPU-NEXT: 1 0
720
- ; RPU-NEXT: 1 0 S_NOP 0, implicit %1.sub1:sgpr_128
721
- ; RPU-NEXT: 0 0
722
- ; RPU-NEXT: Live-out:
723
- ; RPU-NEXT: Live-thr:
724
- ; RPU-NEXT: 0 0
725
- ;
726
- ; RPD-LABEL: name: test_partially_used_early_clobber_def
727
- ; RPD: Live-in:
728
- ; RPD-NEXT: SGPR VGPR
729
- ; RPD-NEXT: 0 0
730
- ; RPD-NEXT: 4 0 %0:sgpr_128 = COPY $sgpr0_sgpr1_sgpr2_sgpr3
731
- ; RPD-NEXT: 4 0
732
- ; RPD-NEXT: 8 0 early-clobber %1:sgpr_128 = COPY %0:sgpr_128
733
- ; RPD-NEXT: 1 0
734
- ; RPD-NEXT: 1 0 S_NOP 0, implicit %1.sub1:sgpr_128
735
- ; RPD-NEXT: 0 0
736
- ; RPD-NEXT: Live-out:
737
- ; RPD-NEXT: Live-thr:
738
- ; RPD-NEXT: 0 0
671
+ ; RP-LABEL: name: test_partially_used_early_clobber_def
672
+ ; RP: Live-in:
673
+ ; RP-NEXT: SGPR VGPR
674
+ ; RP-NEXT: 0 0
675
+ ; RP-NEXT: 4 0 %0:sgpr_128 = COPY $sgpr0_sgpr1_sgpr2_sgpr3
676
+ ; RP-NEXT: 4 0
677
+ ; RP-NEXT: 8 0 early-clobber %1:sgpr_128 = COPY %0:sgpr_128
678
+ ; RP-NEXT: 1 0
679
+ ; RP-NEXT: 1 0 S_NOP 0, implicit %1.sub1:sgpr_128
680
+ ; RP-NEXT: 0 0
681
+ ; RP-NEXT: Live-out:
682
+ ; RP-NEXT: Live-thr:
683
+ ; RP-NEXT: 0 0
739
684
%0:sgpr_128 = COPY $sgpr0_sgpr1_sgpr2_sgpr3
740
685
early-clobber %1:sgpr_128 = COPY %0:sgpr_128
741
686
S_NOP 0, implicit %1.sub1
@@ -752,7 +697,7 @@ body: |
752
697
; RPU-NEXT: 0 0
753
698
; RPU-NEXT: 4 0 %0:sgpr_128 = COPY $sgpr0_sgpr1_sgpr2_sgpr3
754
699
; RPU-NEXT: 4 0
755
- ; RPU-NEXT: 7 0 %1:sgpr_128 = COPY %0:sgpr_128, implicit-def %2:sgpr_128, implicit-def early-clobber %3:sgpr_128, implicit-def dead early-clobber %4:sgpr_128
700
+ ; RPU-NEXT: 16 0 %1:sgpr_128 = COPY %0:sgpr_128, implicit-def %2:sgpr_128, implicit-def early-clobber %3:sgpr_128, implicit-def dead early-clobber %4:sgpr_128
756
701
; RPU-NEXT: 6 0
757
702
; RPU-NEXT: 6 0 S_NOP 0, implicit %1.sub1:sgpr_128, implicit %2.sub0_sub1:sgpr_128, implicit %3.sub0_sub1_sub2:sgpr_128
758
703
; RPU-NEXT: 0 0
0 commit comments