Lines Matching refs:Vector

10 /// support code generation for the standard 'V' (Vector) extension, version
876 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
880 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
893 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
907 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
911 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
927 wti.Vector, vti.Vector, vti.Log2SEW,
930 wti.Vector, vti.Vector, wti.Mask,
934 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
938 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
952 vti.Vector, wti.Vector, vti.Vector, vti.Mask,
956 vti.Vector, wti.Vector, vti.Vector, vti.Mask,
960 vti.Vector, wti.Vector, vti.Vector, vti.Mask,
973 vti.Vector, wti.Vector, vti.Vector, vti.Mask,
976 vti.Vector, wti.Vector, vti.Vector, vti.Mask,
979 vti.Vector, wti.Vector, vti.Vector, vti.Mask,
1047 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
1051 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
1063 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
1067 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
1078 def : Pat<(fvti.Vector (vop (SplatFPOp fvti.ScalarRegClass:$rs2),
1080 (fvti.Vector fvti.RegClass:$merge),
1097 def : Pat<(fvti.Vector (vop (SplatFPOp fvti.ScalarRegClass:$rs2),
1099 (fvti.Vector fvti.RegClass:$merge),
1118 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1134 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs2),
1147 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1155 (vti.Vector vti.RegClass:$rs1), invcc,
1166 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1177 (vti.Vector vti.RegClass:$rs1), invcc,
1191 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1202 (vti.Vector vti.RegClass:$rs1), invcc,
1216 def : Pat<(fvti.Mask (vop (fvti.Vector fvti.RegClass:$rs1),
1226 def : Pat<(fvti.Mask (vop (fvti.Vector fvti.RegClass:$rs1),
1237 (fvti.Vector fvti.RegClass:$rs1),
1257 def : Pat<(vti.Vector (vop (fti.Vector fti.RegClass:$rs2),
1260 (vti.Vector (IMPLICIT_DEF)),
1273 def : Pat<(ivti.Vector (vop (fvti.Vector fvti.RegClass:$rs1),
1277 (ivti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
1287 def : Pat<(ivti.Vector (vop (fvti.Vector fvti.RegClass:$rs1),
1291 (ivti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
1306 def : Pat<(ivti.Vector (vop (fvti.Vector fvti.RegClass:$rs1),
1310 (ivti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
1321 def : Pat<(fvti.Vector (vop (ivti.Vector ivti.RegClass:$rs1),
1325 (fvti.Vector (IMPLICIT_DEF)), ivti.RegClass:$rs1,
1339 def : Pat<(fvti.Vector (vop (ivti.Vector ivti.RegClass:$rs1),
1343 (fvti.Vector (IMPLICIT_DEF)), ivti.RegClass:$rs1,
1356 def : Pat<(iwti.Vector (vop (fvti.Vector fvti.RegClass:$rs1),
1360 (iwti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
1371 def : Pat<(iwti.Vector (vop (fvti.Vector fvti.RegClass:$rs1),
1375 (iwti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
1391 def : Pat<(iwti.Vector (vop (fvti.Vector fvti.RegClass:$rs1),
1395 (iwti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
1407 def : Pat<(fwti.Vector (vop (ivti.Vector ivti.RegClass:$rs1),
1411 (fwti.Vector (IMPLICIT_DEF)), ivti.RegClass:$rs1,
1428 def : Pat<(vti.Vector (vop (fwti.Vector fwti.RegClass:$rs1),
1432 (vti.Vector (IMPLICIT_DEF)), fwti.RegClass:$rs1,
1446 def : Pat<(vti.Vector (vop (fwti.Vector fwti.RegClass:$rs1),
1450 (vti.Vector (IMPLICIT_DEF)), fwti.RegClass:$rs1,
1465 def : Pat<(vti.Vector (vop (fwti.Vector fwti.RegClass:$rs1),
1469 (vti.Vector (IMPLICIT_DEF)), fwti.RegClass:$rs1,
1481 def : Pat<(fvti.Vector (vop (iwti.Vector iwti.RegClass:$rs1),
1485 (fvti.Vector (IMPLICIT_DEF)), iwti.RegClass:$rs1,
1500 def : Pat<(fvti.Vector (vop (iwti.Vector iwti.RegClass:$rs1),
1504 (fvti.Vector (IMPLICIT_DEF)), iwti.RegClass:$rs1,
1513 def: Pat<(vti_m1.Vector (vop (vti_m1.Vector VR:$merge),
1514 (vti.Vector vti.RegClass:$rs1), VR:$rs2,
1518 (vti_m1.Vector VR:$merge),
1519 (vti.Vector vti.RegClass:$rs1),
1520 (vti_m1.Vector VR:$rs2),
1530 def: Pat<(vti_m1.Vector (vop (vti_m1.Vector VR:$merge),
1531 (vti.Vector vti.RegClass:$rs1), VR:$rs2,
1535 (vti_m1.Vector VR:$merge),
1536 (vti.Vector vti.RegClass:$rs1),
1537 (vti_m1.Vector VR:$rs2),
1554 (vti.Vector
1556 (op (wti.Vector wti.RegClass:$rs2),
1557 (wti.Vector (ext_oneuse (vti.Vector vti.RegClass:$rs1)))),
1561 (vti.Vector (IMPLICIT_DEF)),
1565 (vti.Vector
1567 (op (wti.Vector wti.RegClass:$rs2),
1568 (wti.Vector (Low8BitsSplatPat (XLenVT GPR:$rs1)))),
1572 (vti.Vector (IMPLICIT_DEF)),
1576 (vti.Vector
1578 (op (wti.Vector wti.RegClass:$rs2),
1579 (wti.Vector (SplatPat_uimm5 uimm5:$rs1))), (vti.Mask true_mask),
1582 (vti.Vector (IMPLICIT_DEF)),
1595 def: Pat<(wti_m1.Vector (vop (wti_m1.Vector VR:$merge),
1596 (wti.Vector (extop (vti.Vector vti.RegClass:$rs1))),
1600 (wti_m1.Vector VR:$merge), (vti.Vector vti.RegClass:$rs1),
1601 (wti_m1.Vector VR:$rs2), (vti.Mask V0), GPR:$vl, vti.Log2SEW,
1614 def: Pat<(wti_m1.Vector (vop (wti_m1.Vector VR:$merge),
1615 (wti.Vector (extop (vti.Vector vti.RegClass:$rs1))),
1619 (wti_m1.Vector VR:$merge), (vti.Vector vti.RegClass:$rs1),
1620 (wti_m1.Vector VR:$rs2), (vti.Mask V0),
1637 def: Pat<(wti_m1.Vector (vop (wti_m1.Vector VR:$merge),
1638 … (wti.Vector (extop (vti.Vector vti.RegClass:$rs1), (vti.Mask true_mask), VLOpFrag)),
1642 (wti_m1.Vector VR:$merge), (vti.Vector vti.RegClass:$rs1),
1643 (wti_m1.Vector VR:$rs2), (vti.Mask V0), GPR:$vl, vti.Log2SEW,
1656 def: Pat<(wti_m1.Vector (vop (wti_m1.Vector VR:$merge),
1657 … (wti.Vector (extop (vti.Vector vti.RegClass:$rs1), (vti.Mask true_mask), VLOpFrag)),
1661 (wti_m1.Vector VR:$merge), (vti.Vector vti.RegClass:$rs1),
1662 (wti_m1.Vector VR:$rs2), (vti.Mask V0),
1679 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
1683 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
1698 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
1702 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
1717 wti.Vector, vti.Vector, vti.Log2SEW,
1720 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1724 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1740 wti.Vector, vti.Vector, vti.Log2SEW,
1744 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1748 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1762 (vti.Vector
1764 (op (wti.Vector wti.RegClass:$rs2),
1765 (wti.Vector (extop (vti.Vector (SplatPat (XLenVT GPR:$rs1))),
1770 (vti.Vector (IMPLICIT_DEF)),
1782 (vti.Vector
1784 (op (wti.Vector wti.RegClass:$rs2),
1785 (wti.Vector (extop (vti.Vector vti.RegClass:$rs1),
1790 (vti.Vector (IMPLICIT_DEF)), wti.RegClass:$rs2, vti.RegClass:$rs1,
1806 def : Pat<(vti.Vector
1817 def : Pat<(vti.Vector
1835 (vti.Vector (op vti.RegClass:$rd,
1844 (vti.Vector (op vti.RegClass:$rd,
1853 (vti.Vector (op vti.RegClass:$rd,
1862 (vti.Vector (op vti.RegClass:$rd,
1880 def : Pat<(vwmacc_op (vti.Vector vti.RegClass:$rs1),
1881 (vti.Vector vti.RegClass:$rs2),
1882 (wti.Vector wti.RegClass:$rd),
1888 (vti.Vector vti.RegClass:$rs2),
1889 (wti.Vector wti.RegClass:$rd),
1905 def : Pat<(vti.Vector (riscv_trunc_vector_vl
1906 (wti.Vector (op wti.RegClass:$rs1, (SplatPat XLenVT:$rs2),
1909 (vti.Vector (IMPLICIT_DEF)),
1911 def : Pat<(vti.Vector (riscv_trunc_vector_vl
1912 (wti.Vector (op wti.RegClass:$rs1, (SplatPat_uimm5 uimm5:$rs2),
1915 (vti.Vector (IMPLICIT_DEF)),
1925 def : Pat<(vti.Vector (vop vti.RegClass:$rs1, vti.RegClass:$rd,
1932 def : Pat<(vti.Vector (vop (SplatFPOp vti.ScalarRegClass:$rs1),
1947 def : Pat<(vti.Vector (vop vti.RegClass:$rs1, vti.RegClass:$rd,
1958 def : Pat<(vti.Vector (vop (SplatFPOp vti.ScalarRegClass:$rs1),
1978 (vti.Vector (vop vti.RegClass:$rs1, vti.RegClass:$rs2,
1985 (vti.Vector (vop (SplatFPOp vti.ScalarRegClass:$rs1), vti.RegClass:$rs2,
1992 (vti.Vector (vop vti.RegClass:$rs1, vti.RegClass:$rs2,
1999 (vti.Vector (vop (SplatFPOp vti.ScalarRegClass:$rs1), vti.RegClass:$rs2,
2014 (vti.Vector (vop vti.RegClass:$rs1, vti.RegClass:$rs2,
2025 (vti.Vector (vop (SplatFPOp vti.ScalarRegClass:$rs1), vti.RegClass:$rs2,
2036 (vti.Vector (vop vti.RegClass:$rs1, vti.RegClass:$rs2,
2047 (vti.Vector (vop (SplatFPOp vti.ScalarRegClass:$rs1), vti.RegClass:$rs2,
2067 def : Pat<(vop (vti.Vector vti.RegClass:$rs1),
2068 (vti.Vector vti.RegClass:$rs2),
2069 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2074 def : Pat<(vop (vti.Vector (SplatFPOp vti.ScalarRegClass:$rs1)),
2075 (vti.Vector vti.RegClass:$rs2),
2076 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2092 def : Pat<(vop (vti.Vector vti.RegClass:$rs1),
2093 (vti.Vector vti.RegClass:$rs2),
2094 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2103 def : Pat<(vop (vti.Vector (SplatFPOp vti.ScalarRegClass:$rs1)),
2104 (vti.Vector vti.RegClass:$rs2),
2105 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2122 def : Pat<(vti.Vector (vop (vti.Vector vti.RegClass:$rd),
2123 (vti.Vector vti.RegClass:$rs1),
2131 def : Pat<(vti.Vector (vop (vti.Vector vti.RegClass:$rd),
2132 (vti.Vector vti.RegClass:$rs1),
2146 def : Pat<(vti.Vector (vop (vti.Vector vti.RegClass:$rs3),
2147 (vti.Vector vti.RegClass:$rs1),
2159 def : Pat<(vti.Vector (vop (vti.Vector vti.RegClass:$rs3),
2160 (vti.Vector vti.RegClass:$rs1),
2172 def : Pat<(vop (vti.Vector vti.RegClass:$rs1),
2173 (vti.Vector vti.RegClass:$rs2),
2178 def : Pat<(vop (vti.Vector vti.RegClass:$rs1),
2179 (vti.Vector (SplatPat (XLenVT GPR:$rs2))),
2192 // 11. Vector Integer Arithmetic Instructions
2194 // 11.1. Vector Single-Width Integer Add and Subtract
2201 def : Pat<(riscv_sub_vl (vti.Vector (SplatPat (XLenVT GPR:$rs2))),
2202 (vti.Vector vti.RegClass:$rs1),
2207 def : Pat<(riscv_sub_vl (vti.Vector (SplatPat_simm5 simm5:$rs2)),
2208 (vti.Vector vti.RegClass:$rs1),
2216 // 11.2. Vector Widening Integer Add/Subtract
2228 def : Pat<(riscv_shl_vl (wti.Vector (riscv_sext_vl_oneuse
2229 (vti.Vector vti.RegClass:$rs1),
2231 (wti.Vector (riscv_vmv_v_x_vl
2232 (wti.Vector undef), 1, VLOpFrag)),
2237 def : Pat<(riscv_shl_vl (wti.Vector (riscv_zext_vl_oneuse
2238 (vti.Vector vti.RegClass:$rs1),
2240 (wti.Vector (riscv_vmv_v_x_vl
2241 (wti.Vector undef), 1, VLOpFrag)),
2249 // 11.3. Vector Integer Extension
2263 // 11.5. Vector Bitwise Logical Instructions
2268 // 11.6. Vector Single-Width Bit Shift Instructions
2276 def : Pat<(riscv_shl_vl (vti.Vector vti.RegClass:$rs1),
2277 (riscv_vmv_v_x_vl (vti.Vector undef), 1, (XLenVT srcvalue)),
2280 (vti.Vector (IMPLICIT_DEF)),
2284 // 11.7. Vector Narrowing Integer Right Shift Instructions
2305 def : Pat<(vti.Vector (riscv_trunc_vector_vl (wti.Vector wti.RegClass:$rs1),
2309 (vti.Vector (IMPLICIT_DEF)), wti.RegClass:$rs1, 0,
2313 // 11.8. Vector Integer Comparison Instructions
2352 // 11.9. Vector Integer Min/Max Instructions
2358 // 11.10. Vector Single-Width Integer Multiply Instructions
2368 // 11.11. Vector Integer Divide Instructions
2374 // 11.12. Vector Widening Integer Multiply Instructions
2379 // 11.13 Vector Single-Width Integer Multiply-Add Instructions
2385 // 11.14. Vector Widening Integer Multiply-Add Instructions
2394 def : Pat<(riscv_vwmaccsu_vl (vti.Vector vti.RegClass:$rs1),
2396 (wti.Vector wti.RegClass:$rd),
2403 // 11.15. Vector Integer Merge Instructions
2406 def : Pat<(vti.Vector (riscv_vmerge_vl (vti.Mask V0),
2415 def : Pat<(vti.Vector (riscv_vmerge_vl (vti.Mask V0),
2424 def : Pat<(vti.Vector (riscv_vmerge_vl (vti.Mask V0),
2435 // 11.16. Vector Integer Move Instructions
2438 def : Pat<(vti.Vector (riscv_vmv_v_v_vl vti.RegClass:$passthru,
2445 def : Pat<(vti.Vector (riscv_vmv_v_x_vl vti.RegClass:$passthru, GPR:$rs2, VLOpFrag)),
2449 def : Pat<(vti.Vector (riscv_vmv_v_x_vl vti.RegClass:$passthru, (ImmPat simm5:$imm5),
2456 // 12. Vector Fixed-Point Arithmetic Instructions
2458 // 12.1. Vector Single-Width Saturating Add and Subtract
2464 // 12.2. Vector Single-Width Averaging Add and Subtract
2470 // 12.5. Vector Narrowing Fixed-Point Clip Instructions
2474 // 13. Vector Floating-Point Instructions
2476 // 13.2. Vector Single-Width Floating-Point Add/Subtract Instructions
2481 // 13.3. Vector Widening Floating-Point Add/Subtract Instructions
2487 // 13.4. Vector Single-Width Floating-Point Multiply/Divide Instructions
2492 // 13.5. Vector Widening Floating-Point Multiply Instructions
2495 // 13.6 Vector Single-Width Floating-Point Fused Multiply-Add Instructions.
2505 // 13.7. Vector Widening Floating-Point Fused Multiply-Add Instructions
2511 // 13.11. Vector Floating-Point MIN/MAX Instructions
2515 // 13.13. Vector Floating-Point Compare Instructions
2535 // 13.8. Vector Floating-Point Square-Root Instruction
2536 def : Pat<(any_riscv_fsqrt_vl (vti.Vector vti.RegClass:$rs2), (vti.Mask V0),
2539 (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs2,
2546 // 13.12. Vector Floating-Point Sign-Injection Instructions
2547 def : Pat<(riscv_fabs_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0),
2550 (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs,
2554 def : Pat<(riscv_fneg_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0),
2557 (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs,
2561 def : Pat<(riscv_fcopysign_vl (vti.Vector vti.RegClass:$rs1),
2562 (vti.Vector vti.RegClass:$rs2),
2571 def : Pat<(riscv_fcopysign_vl (vti.Vector vti.RegClass:$rs1),
2579 (vti.Vector (IMPLICIT_DEF)),
2582 def : Pat<(riscv_fcopysign_vl (vti.Vector vti.RegClass:$rs1),
2593 def : Pat<(any_riscv_vfround_noexcept_vl (vti.Vector vti.RegClass:$rs1),
2596 (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs1,
2599 // 14.14. Vector Floating-Point Classify Instruction
2600 def : Pat<(riscv_fclass_vl (vti.Vector vti.RegClass:$rs2),
2603 (vti.Vector (IMPLICIT_DEF)), vti.RegClass:$rs2,
2610 // 11.15. Vector Integer Merge Instructions
2611 // 13.15. Vector Floating-Point Merge Instruction
2614 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2623 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2633 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2646 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2661 // 13.16. Vector Floating-Point Move Instruction
2663 def : Pat<(fvti.Vector (riscv_vfmv_v_f_vl
2664 fvti.Vector:$passthru, (fvti.Scalar (fpimm0)), VLOpFrag)),
2667 def : Pat<(fvti.Vector (riscv_vfmv_v_f_vl
2668 … fvti.Vector:$passthru, (fvti.Scalar (SelectFPImm (XLenVT GPR:$imm))), VLOpFrag)),
2676 def : Pat<(fvti.Vector (riscv_vfmv_v_f_vl
2677 … fvti.Vector:$passthru, (fvti.Scalar fvti.ScalarRegClass:$rs2), VLOpFrag)),
2685 // 13.17. Vector Single-Width Floating-Point/Integer Type-Convert Instructions
2718 def : Pat<(fwti.Vector (any_riscv_fpextend_vl
2719 (fvti.Vector fvti.RegClass:$rs1),
2723 (fwti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
2732 def : Pat<(fwti.Vector (any_riscv_fpextend_vl
2733 (fvti.Vector fvti.RegClass:$rs1),
2737 (fwti.Vector (IMPLICIT_DEF)), fvti.RegClass:$rs1,
2764 def : Pat<(fvti.Vector (any_riscv_fpround_vl
2765 (fwti.Vector fwti.RegClass:$rs1),
2768 (fvti.Vector (IMPLICIT_DEF)), fwti.RegClass:$rs1,
2777 def : Pat<(fvti.Vector (any_riscv_fncvt_rod_vl
2778 (fwti.Vector fwti.RegClass:$rs1),
2781 (fvti.Vector (IMPLICIT_DEF)), fwti.RegClass:$rs1,
2790 def : Pat<(fvti.Vector (any_riscv_fpround_vl
2791 (fwti.Vector fwti.RegClass:$rs1),
2794 (fvti.Vector (IMPLICIT_DEF)), fwti.RegClass:$rs1,
2802 // 14. Vector Reduction Operations
2804 // 14.1. Vector Single-Width Integer Reduction Instructions
2814 // 14.2. Vector Widening Integer Reduction Instructions
2821 // 14.3. Vector Single-Width Floating-Point Reduction Instructions
2827 // 14.4. Vector Widening Floating-Point Reduction Instructions
2839 // 15. Vector Mask Instructions
2843 // 15.1 Vector Mask-Register Logical Instructions
2897 // 15.2 Vector count population in mask vcpop.m
2919 // 16. Vector Permutation Instructions
2924 def : Pat<(vti.Vector (riscv_vmv_s_x_vl (vti.Vector vti.RegClass:$merge),
2932 // 16.4. Vector Register Gather Instruction
2935 def : Pat<(vti.Vector (riscv_vrgather_vv_vl vti.RegClass:$rs2,
2943 def : Pat<(vti.Vector (riscv_vrgather_vx_vl vti.RegClass:$rs2, GPR:$rs1,
2950 def : Pat<(vti.Vector (riscv_vrgather_vx_vl vti.RegClass:$rs2,
2969 def : Pat<(vti.Vector
2971 (ivti.Vector ivti.RegClass:$rs1),
2984 def : Pat<(vti.Vector (riscv_vfmv_s_f_vl (vti.Vector vti.RegClass:$merge),
2988 def : Pat<(vti.Vector (riscv_vfmv_s_f_vl (vti.Vector vti.RegClass:$merge),
2997 def : Pat<(vti.Vector (riscv_vfmv_s_f_vl (vti.Vector vti.RegClass:$merge),
3006 def : Pat<(vti.Vector
3008 (ivti.Vector vti.RegClass:$rs1),
3015 def : Pat<(vti.Vector (riscv_vrgather_vx_vl vti.RegClass:$rs2, GPR:$rs1,
3022 def : Pat<(vti.Vector
3042 def : Pat<(vti.Vector
3044 (ivti.Vector ivti.RegClass:$rs1),
3087 def : Pat<(vti.Vector (riscv_vid_vl (vti.Mask V0),
3090 (vti.Vector (IMPLICIT_DEF)), (vti.Mask V0), GPR:$vl, vti.Log2SEW,