@@ -46,3 +46,50 @@ body: |
46
46
%4.sub1:vreg_96 = COPY %2:vgpr_32
47
47
S_ENDPGM 0, implicit %4
48
48
...
49
+
50
+ ---
51
+ name : test_remat_v_pk_mov_b32
52
+ tracksRegLiveness : true
53
+ body : |
54
+ ; CHECK-LABEL: name: test_remat_v_pk_mov_b32
55
+ ; CHECK: bb.0:
56
+ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
57
+ ; CHECK-NEXT: liveins: $sgpr0
58
+ ; CHECK-NEXT: {{ $}}
59
+ ; CHECK-NEXT: [[V_PK_MOV_B32_:%[0-9]+]]:vreg_64_align2 = V_PK_MOV_B32 8, 0, 8, 0, 0, 0, 0, 0, 0, implicit $exec
60
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:vreg_64_align2 = COPY [[V_PK_MOV_B32_]]
61
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vreg_64_align2 = COPY [[V_PK_MOV_B32_]]
62
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:sreg_64 = COPY $sgpr0
63
+ ; CHECK-NEXT: $exec = S_MOV_B64_term [[COPY2]]
64
+ ; CHECK-NEXT: S_CBRANCH_EXECZ %bb.2, implicit $exec
65
+ ; CHECK-NEXT: S_BRANCH %bb.1
66
+ ; CHECK-NEXT: {{ $}}
67
+ ; CHECK-NEXT: bb.1:
68
+ ; CHECK-NEXT: successors: %bb.2(0x80000000)
69
+ ; CHECK-NEXT: {{ $}}
70
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:vreg_64_align2 = V_PK_ADD_F32 8, [[COPY]], 8, [[COPY]], 11, 0, 0, 0, 0, implicit $mode, implicit $exec
71
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vreg_64_align2 = V_PK_ADD_F32 8, [[COPY1]], 8, [[COPY1]], 11, 0, 0, 0, 0, implicit $mode, implicit $exec
72
+ ; CHECK-NEXT: {{ $}}
73
+ ; CHECK-NEXT: bb.2:
74
+ ; CHECK-NEXT: S_NOP 0, implicit [[COPY]]
75
+ ; CHECK-NEXT: S_NOP 0, implicit [[COPY1]]
76
+ ; CHECK-NEXT: S_ENDPGM 0, implicit [[V_PK_MOV_B32_]]
77
+ bb.0:
78
+ liveins: $sgpr0
79
+ %0:vreg_64_align2 = V_PK_MOV_B32 8, 0, 8, 0, 0, 0, 0, 0, 0, implicit $exec
80
+ %1:vreg_64_align2 = COPY %0:vreg_64_align2
81
+ %2:vreg_64_align2 = COPY %0:vreg_64_align2
82
+ %3:sreg_64 = COPY $sgpr0
83
+ $exec = S_MOV_B64_term %3:sreg_64
84
+ S_CBRANCH_EXECZ %bb.2, implicit $exec
85
+ S_BRANCH %bb.1
86
+
87
+ bb.1:
88
+ %1:vreg_64_align2 = V_PK_ADD_F32 8, %1, 8, %1, 11, 0, 0, 0, 0, implicit $mode, implicit $exec
89
+ %2:vreg_64_align2 = V_PK_ADD_F32 8, %2, 8, %2, 11, 0, 0, 0, 0, implicit $mode, implicit $exec
90
+
91
+ bb.2:
92
+ S_NOP 0, implicit %1
93
+ S_NOP 0, implicit %2
94
+ S_ENDPGM 0, implicit %0
95
+ ...
0 commit comments