@@ -290,11 +290,8 @@ define <vscale x 2 x float> @test_vp_splice_nxv2f32_masked(<vscale x 2 x float>
290
290
define <vscale x 2 x i32 > @test_vp_splice_nxv2i32_with_firstelt (i32 %first , <vscale x 2 x i32 > %vb , <vscale x 2 x i1 > %mask , i32 zeroext %evl ) {
291
291
; CHECK-LABEL: test_vp_splice_nxv2i32_with_firstelt:
292
292
; CHECK: # %bb.0:
293
- ; CHECK-NEXT: vsetvli a2, zero, e32, m1, ta, ma
294
- ; CHECK-NEXT: vmv.s.x v9, a0
295
- ; CHECK-NEXT: vslidedown.vi v9, v9, 0, v0.t
296
- ; CHECK-NEXT: vsetvli zero, a1, e32, m1, ta, mu
297
- ; CHECK-NEXT: vslideup.vi v9, v8, 1, v0.t
293
+ ; CHECK-NEXT: vsetvli zero, a1, e32, m1, ta, ma
294
+ ; CHECK-NEXT: vslide1up.vx v9, v8, a0, v0.t
298
295
; CHECK-NEXT: vmv.v.v v8, v9
299
296
; CHECK-NEXT: ret
300
297
%va = insertelement <vscale x 2 x i32 > poison, i32 %first , i32 0
@@ -305,11 +302,8 @@ define <vscale x 2 x i32> @test_vp_splice_nxv2i32_with_firstelt(i32 %first, <vsc
305
302
define <vscale x 2 x i32 > @test_vp_splice_nxv2i32_with_splat_firstelt (i32 %first , <vscale x 2 x i32 > %vb , <vscale x 2 x i1 > %mask , i32 zeroext %evl ) {
306
303
; CHECK-LABEL: test_vp_splice_nxv2i32_with_splat_firstelt:
307
304
; CHECK: # %bb.0:
308
- ; CHECK-NEXT: vsetvli a2, zero, e32, m1, ta, ma
309
- ; CHECK-NEXT: vmv.v.x v9, a0
310
- ; CHECK-NEXT: vslidedown.vi v9, v9, 0, v0.t
311
- ; CHECK-NEXT: vsetvli zero, a1, e32, m1, ta, mu
312
- ; CHECK-NEXT: vslideup.vi v9, v8, 1, v0.t
305
+ ; CHECK-NEXT: vsetvli zero, a1, e32, m1, ta, ma
306
+ ; CHECK-NEXT: vslide1up.vx v9, v8, a0, v0.t
313
307
; CHECK-NEXT: vmv.v.v v8, v9
314
308
; CHECK-NEXT: ret
315
309
%ins = insertelement <vscale x 2 x i32 > poison, i32 %first , i32 0
@@ -321,11 +315,8 @@ define <vscale x 2 x i32> @test_vp_splice_nxv2i32_with_splat_firstelt(i32 %first
321
315
define <vscale x 2 x float > @test_vp_splice_nxv2f32_with_firstelt (float %first , <vscale x 2 x float > %vb , <vscale x 2 x i1 > %mask , i32 zeroext %evl ) {
322
316
; CHECK-LABEL: test_vp_splice_nxv2f32_with_firstelt:
323
317
; CHECK: # %bb.0:
324
- ; CHECK-NEXT: vsetvli a1, zero, e32, m1, ta, ma
325
- ; CHECK-NEXT: vfmv.s.f v9, fa0
326
- ; CHECK-NEXT: vslidedown.vi v9, v9, 0, v0.t
327
- ; CHECK-NEXT: vsetvli zero, a0, e32, m1, ta, mu
328
- ; CHECK-NEXT: vslideup.vi v9, v8, 1, v0.t
318
+ ; CHECK-NEXT: vsetvli zero, a0, e32, m1, ta, ma
319
+ ; CHECK-NEXT: vfslide1up.vf v9, v8, fa0, v0.t
329
320
; CHECK-NEXT: vmv.v.v v8, v9
330
321
; CHECK-NEXT: ret
331
322
%va = insertelement <vscale x 2 x float > poison, float %first , i32 0
0 commit comments