@@ -202,44 +202,6 @@ body: |
202
202
%5:vgpr_32 = V_CNDMASK_B32_e64 0, 0, 0, -1, killed %4, implicit $exec
203
203
...
204
204
205
- ---
206
- name : cmp_f16
207
- body : |
208
- bb.0.entry:
209
- ; GCN-LABEL: name: cmp_f16
210
- ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
211
- ; GCN-NEXT: [[DEF1:%[0-9]+]]:sreg_32 = IMPLICIT_DEF
212
- ; GCN-NEXT: [[V_CVT_F16_U16_e64_:%[0-9]+]]:vgpr_32 = V_CVT_F16_U16_e64 [[DEF]], 0, 0, implicit $mode, implicit $exec
213
- ; GCN-NEXT: [[DEF2:%[0-9]+]]:sreg_32 = IMPLICIT_DEF
214
- ; GCN-NEXT: [[V_CMP_LT_F16_t16_e64_:%[0-9]+]]:sreg_64_xexec = nofpexcept V_CMP_LT_F16_t16_e64 0, [[V_CVT_F16_U16_e64_]], 0, [[DEF1]], 0, implicit $mode, implicit $exec
215
- ; GCN-NEXT: [[V_CNDMASK_B32_e64_:%[0-9]+]]:vgpr_32 = V_CNDMASK_B32_e64 0, 0, 0, -1, killed [[V_CMP_LT_F16_t16_e64_]], implicit $exec
216
- %0:vgpr_32 = IMPLICIT_DEF
217
- %1:sreg_32 = IMPLICIT_DEF
218
- %2:vgpr_32 = V_CVT_F16_U16_e64 %0:vgpr_32, 0, 0, implicit $mode, implicit $exec
219
- %3:sreg_32 = COPY %2:vgpr_32
220
- nofpexcept S_CMP_LT_F16 killed %3:sreg_32, %1:sreg_32, implicit-def $scc, implicit $mode
221
- %4:sreg_64_xexec = COPY $scc
222
- %5:vgpr_32 = V_CNDMASK_B32_e64 0, 0, 0, -1, killed %4, implicit $exec
223
- ...
224
-
225
- # Needs extra shift instruction to select hi 16 bits
226
- ---
227
- name : cvt_hi_f32_f16
228
- body : |
229
- bb.0:
230
-
231
- ; GCN-LABEL: name: cvt_hi_f32_f16
232
- ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
233
- ; GCN-NEXT: [[V_CVT_F16_U16_e64_:%[0-9]+]]:vgpr_32 = V_CVT_F16_U16_e64 [[DEF]], 0, 0, implicit $mode, implicit $exec
234
- ; GCN-NEXT: [[DEF1:%[0-9]+]]:sreg_32 = IMPLICIT_DEF
235
- ; GCN-NEXT: [[V_LSHRREV_B32_e64_:%[0-9]+]]:vgpr_32 = V_LSHRREV_B32_e64 16, [[V_CVT_F16_U16_e64_]], implicit $exec
236
- ; GCN-NEXT: [[V_CVT_F32_F16_e32_:%[0-9]+]]:vgpr_32 = V_CVT_F32_F16_t16_e64 0, [[V_LSHRREV_B32_e64_]], 0, 0, implicit $mode, implicit $exec
237
- %0:vgpr_32 = IMPLICIT_DEF
238
- %1:vgpr_32 = V_CVT_F16_U16_e64 %0:vgpr_32, 0, 0, implicit $mode, implicit $exec
239
- %2:sreg_32 = COPY %1:vgpr_32
240
- %3:sreg_32 = S_CVT_HI_F32_F16 %2:sreg_32, implicit $mode
241
- ...
242
-
243
205
# Test to ensure that src2 of fmac is moved to vgpr
244
206
---
245
207
name : fmac_f32
@@ -260,23 +222,3 @@ body: |
260
222
%4:sreg_32 = COPY %3:vgpr_32
261
223
%5:sreg_32 = nofpexcept S_FMAC_F32 killed %4:sreg_32, %1:sreg_32, %2:sreg_32, implicit $mode
262
224
...
263
-
264
- ---
265
- name : fmac_f16
266
- body : |
267
- bb.0:
268
- ; GCN-LABEL: name: fmac_f16
269
- ; GCN: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
270
- ; GCN-NEXT: [[DEF1:%[0-9]+]]:sreg_32 = IMPLICIT_DEF
271
- ; GCN-NEXT: [[DEF2:%[0-9]+]]:sreg_32 = IMPLICIT_DEF
272
- ; GCN-NEXT: [[V_CVT_F32_U32_e64_:%[0-9]+]]:vgpr_32 = V_CVT_F32_U32_e64 [[DEF]], 0, 0, implicit $mode, implicit $exec
273
- ; GCN-NEXT: [[DEF3:%[0-9]+]]:sreg_32 = IMPLICIT_DEF
274
- ; GCN-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY [[DEF2]]
275
- ; GCN-NEXT: %6:vgpr_32 = nofpexcept V_FMAC_F16_t16_e64 0, killed [[DEF1]], 0, [[COPY]], 0, [[V_CVT_F32_U32_e64_]], 0, 0, 0, implicit $mode, implicit $exec
276
- %0:vgpr_32 = IMPLICIT_DEF
277
- %1:sreg_32 = IMPLICIT_DEF
278
- %2:sreg_32 = IMPLICIT_DEF
279
- %3:vgpr_32 = V_CVT_F32_U32_e64 %0:vgpr_32, 0, 0, implicit $mode, implicit $exec
280
- %4:sreg_32 = COPY %3:vgpr_32
281
- %5:sreg_32 = nofpexcept S_FMAC_F16 killed %1:sreg_32, %2:sreg_32, %4:sreg_32, implicit $mode
282
- ...
0 commit comments