Lines Matching full:mask
39 // Input: (vector, vector/scalar, merge, mask, roundmode, vl)
155 def any_riscv_fadd_vl : PatFrags<(ops node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
156 [(riscv_fadd_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
157 … (riscv_strict_fadd_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl)]>;
158 def any_riscv_fsub_vl : PatFrags<(ops node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
159 [(riscv_fsub_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
160 … (riscv_strict_fsub_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl)]>;
161 def any_riscv_fmul_vl : PatFrags<(ops node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
162 [(riscv_fmul_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
163 … (riscv_strict_fmul_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl)]>;
164 def any_riscv_fdiv_vl : PatFrags<(ops node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
165 [(riscv_fdiv_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl),
166 … (riscv_strict_fdiv_vl node:$lhs, node:$rhs, node:$merge, node:$mask, node:$vl)]>;
167 def any_riscv_fsqrt_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
168 [(riscv_fsqrt_vl node:$src, node:$mask, node:$vl),
169 (riscv_strict_fsqrt_vl node:$src, node:$mask, node:$vl)]>;
211 def any_riscv_vfmadd_vl : PatFrags<(ops node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
212 [(riscv_vfmadd_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
213 … (riscv_strict_vfmadd_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl)]>;
214 def any_riscv_vfnmadd_vl : PatFrags<(ops node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
215 [(riscv_vfnmadd_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
216 … (riscv_strict_vfnmadd_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl)]>;
217 def any_riscv_vfmsub_vl : PatFrags<(ops node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
218 [(riscv_vfmsub_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
219 … (riscv_strict_vfmsub_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl)]>;
220 def any_riscv_vfnmsub_vl : PatFrags<(ops node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
221 [(riscv_vfnmsub_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl),
222 … (riscv_strict_vfnmsub_vl node:$rs1, node:$rs2, node:$rs3, node:$mask, node:$vl)]>;
240 def any_riscv_fpround_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
241 [(riscv_fpround_vl node:$src, node:$mask, node:$vl),
242 (riscv_strict_fpround_vl node:$src, node:$mask, node:$vl)]>;
243 def any_riscv_fpextend_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
244 [(riscv_fpextend_vl node:$src, node:$mask, node:$vl),
245 (riscv_strict_fpextend_vl node:$src, node:$mask, node:$vl)]>;
246 def any_riscv_fncvt_rod_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
247 [(riscv_fncvt_rod_vl node:$src, node:$mask, node:$vl),
248 (riscv_strict_fncvt_rod_vl node:$src, node:$mask, node:$vl)]>;
288 def any_riscv_vfcvt_rm_x_f_vl : PatFrags<(ops node:$src, node:$mask, node:$vl, node:$rm),
289 [(riscv_vfcvt_rm_x_f_vl node:$src, node:$mask, node:$vl, node:$rm),
290 … (riscv_strict_vfcvt_rm_x_f_vl node:$src, node:$mask, node:$vl, node:$rm)]>;
291 def any_riscv_vfcvt_rtz_xu_f_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
292 [(riscv_vfcvt_rtz_xu_f_vl node:$src, node:$mask, node:$vl),
293 (riscv_strict_vfcvt_rtz_xu_f_vl node:$src, node:$mask, node:$vl)]>;
294 def any_riscv_vfcvt_rtz_x_f_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
295 [(riscv_vfcvt_rtz_x_f_vl node:$src, node:$mask, node:$vl),
296 (riscv_strict_vfcvt_rtz_x_f_vl node:$src, node:$mask, node:$vl)]>;
307 def any_riscv_sint_to_fp_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
308 [(riscv_sint_to_fp_vl node:$src, node:$mask, node:$vl),
309 (riscv_strict_sint_to_fp_vl node:$src, node:$mask, node:$vl)]>;
310 def any_riscv_uint_to_fp_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
311 [(riscv_uint_to_fp_vl node:$src, node:$mask, node:$vl),
312 (riscv_strict_uint_to_fp_vl node:$src, node:$mask, node:$vl)]>;
317 def any_riscv_vfround_noexcept_vl : PatFrags<(ops node:$src, node:$mask, node:$vl),
318 [(riscv_vfround_noexcept_vl node:$src, node:$mask, node:$vl),
319 (riscv_strict_vfround_noexcept_vl node:$src, node:$mask, node:$vl)]>;
324 def any_riscv_fsetcc_vl : PatFrags<(ops node:$lhs, node:$rhs, node:$cc, node:$merge, node:$mask, no…
325 … [(riscv_setcc_vl node:$lhs, node:$rhs, node:$cc, node:$merge, node:$mask, node:$vl),
326 … (riscv_strict_fsetcc_vl node:$lhs, node:$rhs, node:$cc, node:$merge, node:$mask, node:$vl)]>;
327 def any_riscv_fsetccs_vl : PatFrags<(ops node:$lhs, node:$rhs, node:$cc, node:$merge, node:$mask, n…
328 … [(riscv_setcc_vl node:$lhs, node:$rhs, node:$cc, node:$merge, node:$mask, node:$vl),
329 … (riscv_strict_fsetccs_vl node:$lhs, node:$rhs, node:$cc, node:$merge, node:$mask, node:$vl)]>;
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,
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,
1081 (fvti.Mask V0),
1089 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
1100 (fvti.Mask V0),
1108 (fvti.Mask V0),
1118 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1121 (vti.Mask V0),
1127 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1134 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs2),
1137 (vti.Mask V0),
1141 vti.RegClass:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1147 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1150 (vti.Mask V0),
1153 GPR:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1154 def : Pat<(vti.Mask (riscv_setcc_vl (SplatPat (XLenVT GPR:$rs2)),
1157 (vti.Mask V0),
1160 GPR:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1166 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1169 (vti.Mask V0),
1172 XLenVT:$rs2, (vti.Mask V0), GPR:$vl,
1176 def : Pat<(vti.Mask (riscv_setcc_vl (SplatPat_simm5 simm5:$rs2),
1179 (vti.Mask V0),
1182 simm5:$rs2, (vti.Mask V0), GPR:$vl,
1191 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
1194 (vti.Mask V0),
1197 (DecImm simm5:$rs2), (vti.Mask V0), GPR:$vl,
1201 def : Pat<(vti.Mask (riscv_setcc_vl (splatpat_kind simm5:$rs2),
1204 (vti.Mask V0),
1207 (DecImm simm5:$rs2), (vti.Mask V0), GPR:$vl,
1216 def : Pat<(fvti.Mask (vop (fvti.Vector fvti.RegClass:$rs1),
1220 (fvti.Mask V0),
1224 fvti.RegClass:$rs2, (fvti.Mask V0),
1226 def : Pat<(fvti.Mask (vop (fvti.Vector fvti.RegClass:$rs1),
1230 (fvti.Mask V0),
1234 fvti.ScalarRegClass:$rs2, (fvti.Mask V0),
1236 def : Pat<(fvti.Mask (vop (SplatFPOp fvti.ScalarRegClass:$rs2),
1240 (fvti.Mask V0),
1244 fvti.ScalarRegClass:$rs2, (fvti.Mask V0),
1258 (fti.Mask V0), VLOpFrag)),
1262 (fti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
1274 (fvti.Mask V0),
1278 (fvti.Mask V0), GPR:$vl, ivti.Log2SEW, TA_MA)>;
1288 (fvti.Mask V0),
1292 (fvti.Mask V0),
1307 (fvti.Mask V0), (XLenVT timm:$frm),
1311 (fvti.Mask V0), timm:$frm, GPR:$vl, ivti.Log2SEW,
1322 (ivti.Mask V0),
1326 (ivti.Mask V0),
1340 (ivti.Mask V0), (XLenVT timm:$frm),
1344 (ivti.Mask V0), timm:$frm, GPR:$vl, fvti.Log2SEW, TA_MA)>;
1357 (fvti.Mask V0),
1361 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW, TA_MA)>;
1372 (fvti.Mask V0),
1376 (fvti.Mask V0),
1392 (fvti.Mask V0), (XLenVT timm:$frm),
1396 (fvti.Mask V0), timm:$frm, GPR:$vl, fvti.Log2SEW, TA_MA)>;
1408 (ivti.Mask V0),
1412 (ivti.Mask V0),
1429 (fwti.Mask V0),
1433 (fwti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
1447 (fwti.Mask V0),
1451 (fwti.Mask V0),
1466 (fwti.Mask V0), (XLenVT timm:$frm),
1470 (fwti.Mask V0), timm:$frm, GPR:$vl, vti.Log2SEW, TA_MA)>;
1482 (iwti.Mask V0),
1486 (iwti.Mask V0),
1501 (iwti.Mask V0), (XLenVT timm:$frm),
1505 (iwti.Mask V0), timm:$frm, GPR:$vl, fvti.Log2SEW, TA_MA)>;
1515 (vti.Mask V0), VLOpFrag,
1521 (vti.Mask V0), GPR:$vl, vti.Log2SEW, (XLenVT timm:$policy))>;
1532 (vti.Mask V0), VLOpFrag,
1538 (vti.Mask V0),
1558 (vti.Mask true_mask),
1569 (vti.Mask true_mask),
1579 (wti.Vector (SplatPat_uimm5 uimm5:$rs1))), (vti.Mask true_mask),
1597 VR:$rs2, (vti.Mask V0), VLOpFrag,
1601 (wti_m1.Vector VR:$rs2), (vti.Mask V0), GPR:$vl, vti.Log2SEW,
1616 VR:$rs2, (vti.Mask V0), VLOpFrag,
1620 (wti_m1.Vector VR:$rs2), (vti.Mask V0),
1638 … (wti.Vector (extop (vti.Vector vti.RegClass:$rs1), (vti.Mask true_mask), VLOpFrag)),
1639 VR:$rs2, (vti.Mask V0), VLOpFrag,
1643 (wti_m1.Vector VR:$rs2), (vti.Mask V0), GPR:$vl, vti.Log2SEW,
1657 … (wti.Vector (extop (vti.Vector vti.RegClass:$rs1), (vti.Mask true_mask), VLOpFrag)),
1658 VR:$rs2, (vti.Mask V0), VLOpFrag,
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,
1720 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1724 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1744 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1748 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
1766 (vti.Mask true_mask), VLOpFrag)),
1767 srcvalue, (wti.Mask true_mask), VLOpFrag),
1768 (vti.Mask true_mask), VLOpFrag)),
1786 (vti.Mask true_mask), VLOpFrag)),
1787 srcvalue, (vti.Mask true_mask), VLOpFrag),
1788 (vti.Mask V0), VLOpFrag)),
1791 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
1810 srcvalue, (vti.Mask true_mask), VLOpFrag),
1811 srcvalue, (vti.Mask true_mask), VLOpFrag)),
1821 srcvalue, (vti.Mask true_mask), VLOpFrag),
1822 srcvalue, (vti.Mask true_mask), VLOpFrag)),
1834 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1837 srcvalue, (vti.Mask true_mask), VLOpFrag),
1838 srcvalue, (vti.Mask true_mask), VLOpFrag)),
1842 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TU_MU)>;
1843 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1846 srcvalue, (vti.Mask true_mask), VLOpFrag),
1847 srcvalue, (vti.Mask true_mask), VLOpFrag)),
1851 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TU_MU)>;
1852 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1855 srcvalue, (vti.Mask true_mask), VLOpFrag),
1856 srcvalue, (vti.Mask true_mask), VLOpFrag)),
1860 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1861 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1864 srcvalue, (vti.Mask true_mask), VLOpFrag),
1865 srcvalue, (vti.Mask true_mask), VLOpFrag)),
1869 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1883 (vti.Mask V0), VLOpFrag),
1886 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1890 (vti.Mask V0), VLOpFrag),
1893 vti.RegClass:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW,
1926 vti.RegClass:$rs2, (vti.Mask V0),
1930 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
1934 (vti.Mask V0),
1938 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
1948 vti.RegClass:$rs2, (vti.Mask V0),
1952 (vti.Mask V0),
1960 (vti.Mask V0),
1964 (vti.Mask V0),
1977 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1979 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
1983 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TU_MU)>;
1984 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1986 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
1990 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TU_MU)>;
1991 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
1993 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
1997 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1998 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
2000 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
2004 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2013 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
2015 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
2019 (vti.Mask V0),
2024 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
2026 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
2030 (vti.Mask V0),
2035 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
2037 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
2041 (vti.Mask V0),
2046 def : Pat<(riscv_vmerge_vl (vti.Mask V0),
2048 vti.RegClass:$rd, (vti.Mask true_mask), VLOpFrag)),
2052 (vti.Mask V0),
2069 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2073 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
2076 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2080 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
2094 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2098 (vti.Mask V0),
2105 (wti.Vector wti.RegClass:$rd), (vti.Mask V0),
2109 (vti.Mask V0),
2124 uimm5:$rs2, (vti.Mask V0),
2128 (vti.Mask V0), GPR:$vl, vti.Log2SEW,
2133 GPR:$rs2, (vti.Mask V0),
2137 (vti.Mask V0), GPR:$vl, vti.Log2SEW,
2148 GPR:$rs2, (vti.Mask V0), VLOpFrag)),
2151 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TU_MU)>;
2161 vti.Scalar:$rs2, (vti.Mask V0), VLOpFrag)),
2164 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TU_MU)>;
2174 vti.RegClass:$merge, (vti.Mask V0), VLOpFrag),
2177 (vti.Mask V0), vxrm, GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2180 vti.RegClass:$merge, (vti.Mask V0), VLOpFrag),
2183 (vti.Mask V0), vxrm, GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2203 vti.RegClass:$merge, (vti.Mask V0), VLOpFrag),
2206 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2209 vti.RegClass:$merge, (vti.Mask V0), VLOpFrag),
2212 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2230 (vti.Mask V0), VLOpFrag)),
2233 wti.RegClass:$merge, (vti.Mask V0), VLOpFrag),
2236 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2239 (vti.Mask V0), VLOpFrag)),
2242 wti.RegClass:$merge, (vti.Mask V0), VLOpFrag),
2245 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2278 srcvalue, (vti.Mask true_mask), VLOpFrag),
2306 (vti.Mask V0),
2310 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
2397 (vti.Mask V0), VLOpFrag),
2400 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2406 def : Pat<(vti.Vector (riscv_vmerge_vl (vti.Mask V0),
2413 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
2415 def : Pat<(vti.Vector (riscv_vmerge_vl (vti.Mask V0),
2422 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
2424 def : Pat<(vti.Vector (riscv_vmerge_vl (vti.Mask V0),
2431 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
2536 def : Pat<(any_riscv_fsqrt_vl (vti.Vector vti.RegClass:$rs2), (vti.Mask V0),
2540 (vti.Mask V0),
2547 def : Pat<(riscv_fabs_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0),
2551 vti.RegClass:$rs, (vti.Mask V0), GPR:$vl, vti.Log2SEW,
2554 def : Pat<(riscv_fneg_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0),
2558 vti.RegClass:$rs, (vti.Mask V0), GPR:$vl, vti.Log2SEW,
2564 (vti.Mask V0),
2568 vti.RegClass:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW,
2573 (vti.Mask true_mask),
2576 (vti.Mask true_mask),
2585 (vti.Mask V0),
2589 vti.ScalarRegClass:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW,
2594 (vti.Mask V0), VLOpFrag),
2597 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
2601 (vti.Mask V0), VLOpFrag),
2604 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TA_MA)>;
2614 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2620 fvti.RegClass:$merge, fvti.RegClass:$rs2, fvti.RegClass:$rs1, (fvti.Mask V0),
2623 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2629 fvti.RegClass:$merge, fvti.RegClass:$rs2, GPR:$imm, (fvti.Mask V0),
2633 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2639 fvti.RegClass:$merge, fvti.RegClass:$rs2, 0, (fvti.Mask V0),
2646 def : Pat<(fvti.Vector (riscv_vmerge_vl (fvti.Mask V0),
2654 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW)>;
2720 (fvti.Mask V0),
2724 (fvti.Mask V0),
2734 (fvti.Mask V0),
2738 (fvti.Mask V0),
2766 (fwti.Mask V0), VLOpFrag)),
2769 (fwti.Mask V0),
2779 (fwti.Mask V0), VLOpFrag)),
2782 (fwti.Mask V0), GPR:$vl, fvti.Log2SEW, TA_MA)>;
2792 (fwti.Mask V0), VLOpFrag)),
2795 (fwti.Mask V0),
2839 // 15. Vector Mask Instructions
2843 // 15.1 Vector Mask-Register Logical Instructions
2844 def : Pat<(mti.Mask (riscv_vmset_vl VLOpFrag)),
2846 def : Pat<(mti.Mask (riscv_vmclr_vl VLOpFrag)),
2849 def : Pat<(mti.Mask (riscv_vmand_vl VR:$rs1, VR:$rs2, VLOpFrag)),
2852 def : Pat<(mti.Mask (riscv_vmor_vl VR:$rs1, VR:$rs2, VLOpFrag)),
2855 def : Pat<(mti.Mask (riscv_vmxor_vl VR:$rs1, VR:$rs2, VLOpFrag)),
2859 def : Pat<(mti.Mask (riscv_vmand_vl VR:$rs1,
2864 def : Pat<(mti.Mask (riscv_vmor_vl VR:$rs1,
2870 def : Pat<(mti.Mask (riscv_vmxor_vl (riscv_vmnot_vl VR:$rs1,
2876 def : Pat<(mti.Mask (riscv_vmnot_vl (riscv_vmand_vl VR:$rs1, VR:$rs2,
2881 def : Pat<(mti.Mask (riscv_vmnot_vl (riscv_vmor_vl VR:$rs1, VR:$rs2,
2886 def : Pat<(mti.Mask (riscv_vmnot_vl (riscv_vmxor_vl VR:$rs1, VR:$rs2,
2893 def : Pat<(mti.Mask (riscv_vmnot_vl VR:$rs, VLOpFrag)),
2897 // 15.2 Vector count population in mask vcpop.m
2898 def : Pat<(XLenVT (riscv_vcpop_vl (mti.Mask VR:$rs2), (mti.Mask true_mask),
2902 def : Pat<(XLenVT (riscv_vcpop_vl (mti.Mask VR:$rs2), (mti.Mask V0),
2905 VR:$rs2, (mti.Mask V0), GPR:$vl, mti.Log2SEW)>;
2907 // 15.3 vfirst find-first-set mask bit
2908 def : Pat<(XLenVT (riscv_vfirst_vl (mti.Mask VR:$rs2), (mti.Mask true_mask),
2912 def : Pat<(XLenVT (riscv_vfirst_vl (mti.Mask VR:$rs2), (mti.Mask V0),
2915 VR:$rs2, (mti.Mask V0), GPR:$vl, mti.Log2SEW)>;
2938 (vti.Mask V0),
2942 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2945 (vti.Mask V0),
2949 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2953 (vti.Mask V0),
2957 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
2973 (vti.Mask V0),
2977 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
3010 (vti.Mask V0),
3014 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
3017 (vti.Mask V0),
3021 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
3026 (vti.Mask V0),
3030 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
3046 (vti.Mask V0),
3050 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
3087 def : Pat<(vti.Vector (riscv_vid_vl (vti.Mask V0),
3090 (vti.Vector (IMPLICIT_DEF)), (vti.Mask V0), GPR:$vl, vti.Log2SEW,