@@ -2258,18 +2258,18 @@ define void @vand_vx_loop_hoisted_not(ptr %a, i32 noundef signext %mask) {
22582258; CHECK-RV32-NEXT: vsetvli a7, zero, e32, m2, ta, ma
22592259; CHECK-RV32-NEXT: .LBB98_3: # %vector.body
22602260; CHECK-RV32-NEXT: # =>This Inner Loop Header: Depth=1
2261- ; CHECK-RV32-NEXT: slli a7, a6, 2
2262- ; CHECK-RV32-NEXT: add t0, a6, a4
2263- ; CHECK-RV32-NEXT: add a7, a0, a7
2264- ; CHECK-RV32-NEXT: vl2re32.v v8, (a7)
2265- ; CHECK-RV32-NEXT: sltu a6, t0, a6
2266- ; CHECK-RV32-NEXT: add a5, a5, a6
2267- ; CHECK-RV32-NEXT: xor a6, t0, a3
2261+ ; CHECK-RV32-NEXT: mv a7, a6
2262+ ; CHECK-RV32-NEXT: slli t0, a6, 2
2263+ ; CHECK-RV32-NEXT: add a6, a6, a4
2264+ ; CHECK-RV32-NEXT: add t0, a0, t0
2265+ ; CHECK-RV32-NEXT: vl2re32.v v8, (t0)
2266+ ; CHECK-RV32-NEXT: sltu a7, a6, a7
2267+ ; CHECK-RV32-NEXT: add a5, a5, a7
2268+ ; CHECK-RV32-NEXT: xor a7, a6, a3
22682269; CHECK-RV32-NEXT: vand.vx v8, v8, a1
2269- ; CHECK-RV32-NEXT: or t1, a6, a5
2270- ; CHECK-RV32-NEXT: vs2r.v v8, (a7)
2271- ; CHECK-RV32-NEXT: mv a6, t0
2272- ; CHECK-RV32-NEXT: bnez t1, .LBB98_3
2270+ ; CHECK-RV32-NEXT: or a7, a7, a5
2271+ ; CHECK-RV32-NEXT: vs2r.v v8, (t0)
2272+ ; CHECK-RV32-NEXT: bnez a7, .LBB98_3
22732273; CHECK-RV32-NEXT: # %bb.4: # %middle.block
22742274; CHECK-RV32-NEXT: bnez a3, .LBB98_6
22752275; CHECK-RV32-NEXT: .LBB98_5: # %for.body
@@ -2350,18 +2350,18 @@ define void @vand_vx_loop_hoisted_not(ptr %a, i32 noundef signext %mask) {
23502350; CHECK-ZVKB-NOZBB32-NEXT: vsetvli a7, zero, e32, m2, ta, ma
23512351; CHECK-ZVKB-NOZBB32-NEXT: .LBB98_3: # %vector.body
23522352; CHECK-ZVKB-NOZBB32-NEXT: # =>This Inner Loop Header: Depth=1
2353- ; CHECK-ZVKB-NOZBB32-NEXT: slli a7, a6, 2
2354- ; CHECK-ZVKB-NOZBB32-NEXT: add t0, a6, a4
2355- ; CHECK-ZVKB-NOZBB32-NEXT: add a7, a0, a7
2356- ; CHECK-ZVKB-NOZBB32-NEXT: vl2re32.v v8, (a7)
2357- ; CHECK-ZVKB-NOZBB32-NEXT: sltu a6, t0, a6
2358- ; CHECK-ZVKB-NOZBB32-NEXT: add a5, a5, a6
2359- ; CHECK-ZVKB-NOZBB32-NEXT: xor a6, t0, a3
2353+ ; CHECK-ZVKB-NOZBB32-NEXT: mv a7, a6
2354+ ; CHECK-ZVKB-NOZBB32-NEXT: slli t0, a6, 2
2355+ ; CHECK-ZVKB-NOZBB32-NEXT: add a6, a6, a4
2356+ ; CHECK-ZVKB-NOZBB32-NEXT: add t0, a0, t0
2357+ ; CHECK-ZVKB-NOZBB32-NEXT: vl2re32.v v8, (t0)
2358+ ; CHECK-ZVKB-NOZBB32-NEXT: sltu a7, a6, a7
2359+ ; CHECK-ZVKB-NOZBB32-NEXT: add a5, a5, a7
2360+ ; CHECK-ZVKB-NOZBB32-NEXT: xor a7, a6, a3
23602361; CHECK-ZVKB-NOZBB32-NEXT: vandn.vx v8, v8, a1
2361- ; CHECK-ZVKB-NOZBB32-NEXT: or t1, a6, a5
2362- ; CHECK-ZVKB-NOZBB32-NEXT: vs2r.v v8, (a7)
2363- ; CHECK-ZVKB-NOZBB32-NEXT: mv a6, t0
2364- ; CHECK-ZVKB-NOZBB32-NEXT: bnez t1, .LBB98_3
2362+ ; CHECK-ZVKB-NOZBB32-NEXT: or a7, a7, a5
2363+ ; CHECK-ZVKB-NOZBB32-NEXT: vs2r.v v8, (t0)
2364+ ; CHECK-ZVKB-NOZBB32-NEXT: bnez a7, .LBB98_3
23652365; CHECK-ZVKB-NOZBB32-NEXT: # %bb.4: # %middle.block
23662366; CHECK-ZVKB-NOZBB32-NEXT: bnez a3, .LBB98_7
23672367; CHECK-ZVKB-NOZBB32-NEXT: .LBB98_5: # %for.body.preheader
@@ -2444,18 +2444,18 @@ define void @vand_vx_loop_hoisted_not(ptr %a, i32 noundef signext %mask) {
24442444; CHECK-ZVKB-ZBB32-NEXT: vsetvli a7, zero, e32, m2, ta, ma
24452445; CHECK-ZVKB-ZBB32-NEXT: .LBB98_3: # %vector.body
24462446; CHECK-ZVKB-ZBB32-NEXT: # =>This Inner Loop Header: Depth=1
2447- ; CHECK-ZVKB-ZBB32-NEXT: slli a7, a6, 2
2448- ; CHECK-ZVKB-ZBB32-NEXT: add t0, a6, a4
2449- ; CHECK-ZVKB-ZBB32-NEXT: add a7, a0, a7
2450- ; CHECK-ZVKB-ZBB32-NEXT: vl2re32.v v8, (a7)
2451- ; CHECK-ZVKB-ZBB32-NEXT: sltu a6, t0, a6
2452- ; CHECK-ZVKB-ZBB32-NEXT: add a5, a5, a6
2453- ; CHECK-ZVKB-ZBB32-NEXT: xor a6, t0, a3
2447+ ; CHECK-ZVKB-ZBB32-NEXT: mv a7, a6
2448+ ; CHECK-ZVKB-ZBB32-NEXT: slli t0, a6, 2
2449+ ; CHECK-ZVKB-ZBB32-NEXT: add a6, a6, a4
2450+ ; CHECK-ZVKB-ZBB32-NEXT: add t0, a0, t0
2451+ ; CHECK-ZVKB-ZBB32-NEXT: vl2re32.v v8, (t0)
2452+ ; CHECK-ZVKB-ZBB32-NEXT: sltu a7, a6, a7
2453+ ; CHECK-ZVKB-ZBB32-NEXT: add a5, a5, a7
2454+ ; CHECK-ZVKB-ZBB32-NEXT: xor a7, a6, a3
24542455; CHECK-ZVKB-ZBB32-NEXT: vandn.vx v8, v8, a1
2455- ; CHECK-ZVKB-ZBB32-NEXT: or t1, a6, a5
2456- ; CHECK-ZVKB-ZBB32-NEXT: vs2r.v v8, (a7)
2457- ; CHECK-ZVKB-ZBB32-NEXT: mv a6, t0
2458- ; CHECK-ZVKB-ZBB32-NEXT: bnez t1, .LBB98_3
2456+ ; CHECK-ZVKB-ZBB32-NEXT: or a7, a7, a5
2457+ ; CHECK-ZVKB-ZBB32-NEXT: vs2r.v v8, (t0)
2458+ ; CHECK-ZVKB-ZBB32-NEXT: bnez a7, .LBB98_3
24592459; CHECK-ZVKB-ZBB32-NEXT: # %bb.4: # %middle.block
24602460; CHECK-ZVKB-ZBB32-NEXT: bnez a3, .LBB98_6
24612461; CHECK-ZVKB-ZBB32-NEXT: .LBB98_5: # %for.body
0 commit comments