@@ -221,16 +221,16 @@ define <vscale x 32 x bfloat> @vfdiv_vv_nxv32bf16(<vscale x 32 x bfloat> %va, <v
221
221
; CHECK-NEXT: vs8r.v v24, (a0) # Unknown-size Folded Spill
222
222
; CHECK-NEXT: vfwcvtbf16.f.f.v v0, v8
223
223
; CHECK-NEXT: vfwcvtbf16.f.f.v v24, v20
224
- ; CHECK-NEXT: vfwcvtbf16.f.f.v v16, v12
225
- ; CHECK-NEXT: vl8r.v v8, (a0) # Unknown-size Folded Reload
224
+ ; CHECK-NEXT: vl8r.v v16, (a0) # Unknown-size Folded Reload
226
225
; CHECK-NEXT: vsetvli zero, zero, e32, m8, ta, ma
227
- ; CHECK-NEXT: vfdiv.vv v0 , v0, v8
226
+ ; CHECK-NEXT: vfdiv.vv v16 , v0, v16
228
227
; CHECK-NEXT: vsetvli zero, zero, e16, m4, ta, ma
229
- ; CHECK-NEXT: vfncvtbf16 .f.f.w v8, v0
228
+ ; CHECK-NEXT: vfwcvtbf16 .f.f.v v0, v12
230
229
; CHECK-NEXT: vsetvli zero, zero, e32, m8, ta, ma
231
- ; CHECK-NEXT: vfdiv.vv v16, v16 , v24
230
+ ; CHECK-NEXT: vfdiv.vv v24, v0 , v24
232
231
; CHECK-NEXT: vsetvli zero, zero, e16, m4, ta, ma
233
- ; CHECK-NEXT: vfncvtbf16.f.f.w v12, v16
232
+ ; CHECK-NEXT: vfncvtbf16.f.f.w v8, v16
233
+ ; CHECK-NEXT: vfncvtbf16.f.f.w v12, v24
234
234
; CHECK-NEXT: csrr a0, vlenb
235
235
; CHECK-NEXT: slli a0, a0, 3
236
236
; CHECK-NEXT: add sp, sp, a0
@@ -249,32 +249,42 @@ define <vscale x 32 x bfloat> @vfdiv_vf_nxv32bf16(<vscale x 32 x bfloat> %va, bf
249
249
; CHECK-NEXT: addi sp, sp, -16
250
250
; CHECK-NEXT: .cfi_def_cfa_offset 16
251
251
; CHECK-NEXT: csrr a0, vlenb
252
- ; CHECK-NEXT: slli a0, a0, 3
252
+ ; CHECK-NEXT: slli a0, a0, 4
253
253
; CHECK-NEXT: sub sp, sp, a0
254
- ; CHECK-NEXT: .cfi_escape 0x0f, 0x0d, 0x72, 0x00, 0x11, 0x10, 0x22, 0x11, 0x08 , 0x92, 0xa2, 0x38, 0x00, 0x1e, 0x22 # sp + 16 + 8 * vlenb
254
+ ; CHECK-NEXT: .cfi_escape 0x0f, 0x0d, 0x72, 0x00, 0x11, 0x10, 0x22, 0x11, 0x10 , 0x92, 0xa2, 0x38, 0x00, 0x1e, 0x22 # sp + 16 + 16 * vlenb
255
255
; CHECK-NEXT: fmv.x.h a0, fa0
256
256
; CHECK-NEXT: vsetvli a1, zero, e16, m4, ta, ma
257
257
; CHECK-NEXT: vfwcvtbf16.f.f.v v16, v8
258
258
; CHECK-NEXT: addi a1, sp, 16
259
259
; CHECK-NEXT: vs8r.v v16, (a1) # Unknown-size Folded Spill
260
- ; CHECK-NEXT: vfwcvtbf16.f.f.v v24, v12
261
260
; CHECK-NEXT: vsetvli a1, zero, e16, m8, ta, ma
262
- ; CHECK-NEXT: vmv.v.x v8 , a0
261
+ ; CHECK-NEXT: vmv.v.x v16 , a0
263
262
; CHECK-NEXT: vsetvli a0, zero, e16, m4, ta, ma
264
- ; CHECK-NEXT: vfwcvtbf16.f.f.v v0, v8
265
- ; CHECK-NEXT: vfwcvtbf16.f.f.v v16, v12
263
+ ; CHECK-NEXT: vfwcvtbf16.f.f.v v0, v16
264
+ ; CHECK-NEXT: vfwcvtbf16.f.f.v v24, v20
265
+ ; CHECK-NEXT: csrr a0, vlenb
266
+ ; CHECK-NEXT: slli a0, a0, 3
267
+ ; CHECK-NEXT: add a0, sp, a0
268
+ ; CHECK-NEXT: addi a0, a0, 16
269
+ ; CHECK-NEXT: vs8r.v v24, (a0) # Unknown-size Folded Spill
266
270
; CHECK-NEXT: addi a0, sp, 16
267
- ; CHECK-NEXT: vl8r.v v8 , (a0) # Unknown-size Folded Reload
271
+ ; CHECK-NEXT: vl8r.v v16 , (a0) # Unknown-size Folded Reload
268
272
; CHECK-NEXT: vsetvli zero, zero, e32, m8, ta, ma
269
- ; CHECK-NEXT: vfdiv.vv v0, v8 , v0
273
+ ; CHECK-NEXT: vfdiv.vv v24, v16 , v0
270
274
; CHECK-NEXT: vsetvli zero, zero, e16, m4, ta, ma
271
- ; CHECK-NEXT: vfncvtbf16.f.f.w v8, v0
275
+ ; CHECK-NEXT: vfwcvtbf16.f.f.v v0, v12
276
+ ; CHECK-NEXT: csrr a0, vlenb
277
+ ; CHECK-NEXT: slli a0, a0, 3
278
+ ; CHECK-NEXT: add a0, sp, a0
279
+ ; CHECK-NEXT: addi a0, a0, 16
280
+ ; CHECK-NEXT: vl8r.v v8, (a0) # Unknown-size Folded Reload
272
281
; CHECK-NEXT: vsetvli zero, zero, e32, m8, ta, ma
273
- ; CHECK-NEXT: vfdiv.vv v16, v24, v16
282
+ ; CHECK-NEXT: vfdiv.vv v16, v0, v8
274
283
; CHECK-NEXT: vsetvli zero, zero, e16, m4, ta, ma
284
+ ; CHECK-NEXT: vfncvtbf16.f.f.w v8, v24
275
285
; CHECK-NEXT: vfncvtbf16.f.f.w v12, v16
276
286
; CHECK-NEXT: csrr a0, vlenb
277
- ; CHECK-NEXT: slli a0, a0, 3
287
+ ; CHECK-NEXT: slli a0, a0, 4
278
288
; CHECK-NEXT: add sp, sp, a0
279
289
; CHECK-NEXT: .cfi_def_cfa sp, 16
280
290
; CHECK-NEXT: addi sp, sp, 16
@@ -573,16 +583,16 @@ define <vscale x 32 x half> @vfdiv_vv_nxv32f16(<vscale x 32 x half> %va, <vscale
573
583
; ZVFHMIN-NEXT: vs8r.v v24, (a0) # Unknown-size Folded Spill
574
584
; ZVFHMIN-NEXT: vfwcvt.f.f.v v0, v8
575
585
; ZVFHMIN-NEXT: vfwcvt.f.f.v v24, v20
576
- ; ZVFHMIN-NEXT: vfwcvt.f.f.v v16, v12
577
- ; ZVFHMIN-NEXT: vl8r.v v8, (a0) # Unknown-size Folded Reload
586
+ ; ZVFHMIN-NEXT: vl8r.v v16, (a0) # Unknown-size Folded Reload
578
587
; ZVFHMIN-NEXT: vsetvli zero, zero, e32, m8, ta, ma
579
- ; ZVFHMIN-NEXT: vfdiv.vv v0 , v0, v8
588
+ ; ZVFHMIN-NEXT: vfdiv.vv v16 , v0, v16
580
589
; ZVFHMIN-NEXT: vsetvli zero, zero, e16, m4, ta, ma
581
- ; ZVFHMIN-NEXT: vfncvt .f.f.w v8, v0
590
+ ; ZVFHMIN-NEXT: vfwcvt .f.f.v v0, v12
582
591
; ZVFHMIN-NEXT: vsetvli zero, zero, e32, m8, ta, ma
583
- ; ZVFHMIN-NEXT: vfdiv.vv v16, v16 , v24
592
+ ; ZVFHMIN-NEXT: vfdiv.vv v24, v0 , v24
584
593
; ZVFHMIN-NEXT: vsetvli zero, zero, e16, m4, ta, ma
585
- ; ZVFHMIN-NEXT: vfncvt.f.f.w v12, v16
594
+ ; ZVFHMIN-NEXT: vfncvt.f.f.w v8, v16
595
+ ; ZVFHMIN-NEXT: vfncvt.f.f.w v12, v24
586
596
; ZVFHMIN-NEXT: csrr a0, vlenb
587
597
; ZVFHMIN-NEXT: slli a0, a0, 3
588
598
; ZVFHMIN-NEXT: add sp, sp, a0
@@ -607,32 +617,42 @@ define <vscale x 32 x half> @vfdiv_vf_nxv32f16(<vscale x 32 x half> %va, half %b
607
617
; ZVFHMIN-NEXT: addi sp, sp, -16
608
618
; ZVFHMIN-NEXT: .cfi_def_cfa_offset 16
609
619
; ZVFHMIN-NEXT: csrr a0, vlenb
610
- ; ZVFHMIN-NEXT: slli a0, a0, 3
620
+ ; ZVFHMIN-NEXT: slli a0, a0, 4
611
621
; ZVFHMIN-NEXT: sub sp, sp, a0
612
- ; ZVFHMIN-NEXT: .cfi_escape 0x0f, 0x0d, 0x72, 0x00, 0x11, 0x10, 0x22, 0x11, 0x08 , 0x92, 0xa2, 0x38, 0x00, 0x1e, 0x22 # sp + 16 + 8 * vlenb
622
+ ; ZVFHMIN-NEXT: .cfi_escape 0x0f, 0x0d, 0x72, 0x00, 0x11, 0x10, 0x22, 0x11, 0x10 , 0x92, 0xa2, 0x38, 0x00, 0x1e, 0x22 # sp + 16 + 16 * vlenb
613
623
; ZVFHMIN-NEXT: fmv.x.h a0, fa0
614
624
; ZVFHMIN-NEXT: vsetvli a1, zero, e16, m4, ta, ma
615
625
; ZVFHMIN-NEXT: vfwcvt.f.f.v v16, v8
616
626
; ZVFHMIN-NEXT: addi a1, sp, 16
617
627
; ZVFHMIN-NEXT: vs8r.v v16, (a1) # Unknown-size Folded Spill
618
- ; ZVFHMIN-NEXT: vfwcvt.f.f.v v24, v12
619
628
; ZVFHMIN-NEXT: vsetvli a1, zero, e16, m8, ta, ma
620
- ; ZVFHMIN-NEXT: vmv.v.x v8 , a0
629
+ ; ZVFHMIN-NEXT: vmv.v.x v16 , a0
621
630
; ZVFHMIN-NEXT: vsetvli a0, zero, e16, m4, ta, ma
622
- ; ZVFHMIN-NEXT: vfwcvt.f.f.v v0, v8
623
- ; ZVFHMIN-NEXT: vfwcvt.f.f.v v16, v12
631
+ ; ZVFHMIN-NEXT: vfwcvt.f.f.v v0, v16
632
+ ; ZVFHMIN-NEXT: vfwcvt.f.f.v v24, v20
633
+ ; ZVFHMIN-NEXT: csrr a0, vlenb
634
+ ; ZVFHMIN-NEXT: slli a0, a0, 3
635
+ ; ZVFHMIN-NEXT: add a0, sp, a0
636
+ ; ZVFHMIN-NEXT: addi a0, a0, 16
637
+ ; ZVFHMIN-NEXT: vs8r.v v24, (a0) # Unknown-size Folded Spill
624
638
; ZVFHMIN-NEXT: addi a0, sp, 16
625
- ; ZVFHMIN-NEXT: vl8r.v v8 , (a0) # Unknown-size Folded Reload
639
+ ; ZVFHMIN-NEXT: vl8r.v v16 , (a0) # Unknown-size Folded Reload
626
640
; ZVFHMIN-NEXT: vsetvli zero, zero, e32, m8, ta, ma
627
- ; ZVFHMIN-NEXT: vfdiv.vv v0, v8 , v0
641
+ ; ZVFHMIN-NEXT: vfdiv.vv v24, v16 , v0
628
642
; ZVFHMIN-NEXT: vsetvli zero, zero, e16, m4, ta, ma
629
- ; ZVFHMIN-NEXT: vfncvt.f.f.w v8, v0
643
+ ; ZVFHMIN-NEXT: vfwcvt.f.f.v v0, v12
644
+ ; ZVFHMIN-NEXT: csrr a0, vlenb
645
+ ; ZVFHMIN-NEXT: slli a0, a0, 3
646
+ ; ZVFHMIN-NEXT: add a0, sp, a0
647
+ ; ZVFHMIN-NEXT: addi a0, a0, 16
648
+ ; ZVFHMIN-NEXT: vl8r.v v8, (a0) # Unknown-size Folded Reload
630
649
; ZVFHMIN-NEXT: vsetvli zero, zero, e32, m8, ta, ma
631
- ; ZVFHMIN-NEXT: vfdiv.vv v16, v24, v16
650
+ ; ZVFHMIN-NEXT: vfdiv.vv v16, v0, v8
632
651
; ZVFHMIN-NEXT: vsetvli zero, zero, e16, m4, ta, ma
652
+ ; ZVFHMIN-NEXT: vfncvt.f.f.w v8, v24
633
653
; ZVFHMIN-NEXT: vfncvt.f.f.w v12, v16
634
654
; ZVFHMIN-NEXT: csrr a0, vlenb
635
- ; ZVFHMIN-NEXT: slli a0, a0, 3
655
+ ; ZVFHMIN-NEXT: slli a0, a0, 4
636
656
; ZVFHMIN-NEXT: add sp, sp, a0
637
657
; ZVFHMIN-NEXT: .cfi_def_cfa sp, 16
638
658
; ZVFHMIN-NEXT: addi sp, sp, 16
0 commit comments