Lines Matching refs:Mask
367 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
370 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
380 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
392 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
395 wti.Vector, vti.Vector, vti.Vector, vti.Mask,
406 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
409 wti.Vector, wti.Vector, vti.Vector, vti.Mask,
437 vti.Vector, vti.Vector, vti.Vector, vti.Mask,
440 vti.Vector, vti.Vector, vti.Mask, vti.Log2SEW,
449 (fvti.Mask V0),
454 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
460 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
462 (vti.Mask V0),
465 (vti.Mask (IMPLICIT_DEF)),
468 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
475 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs2),
477 (vti.Mask V0),
480 (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
481 vti.RegClass:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
487 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
489 (vti.Mask V0),
491 (instruction_masked (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
492 GPR:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
493 def : Pat<(vti.Mask (riscv_setcc_vl (SplatPat (XLenVT GPR:$rs2)),
495 (vti.Mask V0),
497 (instruction_masked (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
498 GPR:$rs2, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
504 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
506 (vti.Mask V0),
508 (instruction_masked (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
509 XLenVT:$rs2, (vti.Mask V0), GPR:$vl,
513 def : Pat<(vti.Mask (riscv_setcc_vl (SplatPat_simm5 simm5:$rs2),
515 (vti.Mask V0),
517 (instruction_masked (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
518 simm5:$rs2, (vti.Mask V0), GPR:$vl,
527 def : Pat<(vti.Mask (riscv_setcc_vl (vti.Vector vti.RegClass:$rs1),
529 (vti.Mask V0),
531 (instruction_masked (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
532 (DecImm simm5:$rs2), (vti.Mask V0), GPR:$vl,
536 def : Pat<(vti.Mask (riscv_setcc_vl (splatpat_kind simm5:$rs2),
538 (vti.Mask V0),
540 (instruction_masked (vti.Mask (IMPLICIT_DEF)), vti.RegClass:$rs1,
541 (DecImm simm5:$rs2), (vti.Mask V0), GPR:$vl,
549 def : Pat<(fvti.Mask (riscv_setcc_vl (fvti.Vector fvti.RegClass:$rs1),
552 (fvti.Mask V0),
555 (fvti.Mask (IMPLICIT_DEF)), fvti.RegClass:$rs1,
556 fvti.RegClass:$rs2, (fvti.Mask V0),
558 def : Pat<(fvti.Mask (riscv_setcc_vl (fvti.Vector fvti.RegClass:$rs1),
561 (fvti.Mask V0),
564 (fvti.Mask (IMPLICIT_DEF)), fvti.RegClass:$rs1,
565 fvti.ScalarRegClass:$rs2, (fvti.Mask V0),
567 def : Pat<(fvti.Mask (riscv_setcc_vl (SplatFPOp fvti.ScalarRegClass:$rs2),
570 (fvti.Mask V0),
573 (fvti.Mask (IMPLICIT_DEF)), fvti.RegClass:$rs1,
574 fvti.ScalarRegClass:$rs2, (fvti.Mask V0),
585 (fti.Mask V0), VLOpFrag)),
589 (fti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
597 (fvti.Mask V0),
601 (fvti.Mask V0), GPR:$vl, ivti.Log2SEW, TAIL_AGNOSTIC)>;
609 (ivti.Mask V0),
613 (ivti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
622 (fvti.Mask V0),
626 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
635 (ivti.Mask V0),
639 (ivti.Mask V0), GPR:$vl, ivti.Log2SEW, TAIL_AGNOSTIC)>;
648 (fwti.Mask V0),
652 (fwti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
661 (iwti.Mask V0),
665 (iwti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
673 (vti.Mask true_mask),
682 (vti.Mask V0), VLOpFrag)),
687 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
700 (vti.Mask true_mask),
709 (vti.Mask true_mask),
726 (wti.Vector (SplatPat_uimm5 uimm5:$rs1))), (vti.Mask true_mask),
740 VR:$rs2, (vti.Mask true_mask), VLOpFrag)),
746 VR:$rs2, (vti.Mask V0), VLOpFrag)),
749 (wti_m1.Vector VR:$rs2), (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
759 … (wti.Vector (extop (vti.Vector vti.RegClass:$rs1), (vti.Mask true_mask), VLOpFrag)),
760 VR:$rs2, (vti.Mask true_mask), VLOpFrag)),
765 … (wti.Vector (extop (vti.Vector vti.RegClass:$rs1), (vti.Mask true_mask), VLOpFrag)),
766 VR:$rs2, (vti.Mask V0), VLOpFrag)),
769 (wti_m1.Vector VR:$rs2), (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
778 (fvti.Mask true_mask), VLOpFrag)),
780 (fvti.Mask true_mask), VLOpFrag)),
781 (fwti.Mask true_mask), VLOpFrag)),
786 (fvti.Mask true_mask), VLOpFrag)),
788 (fvti.Mask true_mask), VLOpFrag)),
789 (fwti.Mask true_mask), VLOpFrag)),
802 (fvti.Mask true_mask), VLOpFrag)),
803 (fwti.Mask true_mask), VLOpFrag)),
809 (fvti.Mask true_mask), VLOpFrag)),
810 (fwti.Mask true_mask), VLOpFrag)),
831 (vti.Mask true_mask), VLOpFrag)),
832 (wti.Mask true_mask), VLOpFrag),
833 (vti.Mask true_mask), VLOpFrag)),
848 (vti.Mask true_mask), VLOpFrag),
849 (vti.Mask true_mask), VLOpFrag)),
859 (vti.Mask true_mask), VLOpFrag),
860 (vti.Mask true_mask), VLOpFrag)),
875 (vti.Mask true_mask), VLOpFrag),
876 (vti.Mask true_mask), VLOpFrag)),
884 (vti.Mask true_mask), VLOpFrag),
885 (vti.Mask true_mask), VLOpFrag)),
913 vti.RegClass:$rs2, (vti.Mask true_mask),
919 vti.RegClass:$rs2, (vti.Mask V0),
923 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
927 (vti.Mask true_mask),
934 (vti.Mask V0),
938 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
949 (vti.Mask true_mask), VLOpFrag)),
952 (vti.Mask true_mask), VLOpFrag)),
953 (wti.Vector wti.RegClass:$rd), (vti.Mask true_mask),
961 (vti.Mask true_mask), VLOpFrag)),
964 (vti.Mask true_mask), VLOpFrag)),
965 (wti.Vector wti.RegClass:$rd), (vti.Mask true_mask),
986 (vti.Vector vti.RegClass:$rs1), (vti.Mask V0),
990 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
992 (vti.Vector vti.RegClass:$rs1), (vti.Mask V0),
996 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1033 (vti.Mask true_mask),
1054 (vti.Mask V0),
1058 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1135 (vti.Mask true_mask), VLOpFrag),
1136 (vti.Mask true_mask), VLOpFrag)),
1144 def : Pat<(vti.Vector (riscv_vselect_vl (vti.Mask V0),
1149 vti.RegClass:$rs2, vti.RegClass:$rs1, (vti.Mask V0),
1152 def : Pat<(vti.Vector (riscv_vselect_vl (vti.Mask V0),
1157 vti.RegClass:$rs2, GPR:$rs1, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1159 def : Pat<(vti.Vector (riscv_vselect_vl (vti.Mask V0),
1164 vti.RegClass:$rs2, simm5:$rs1, (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1166 def : Pat<(vti.Vector (riscv_vp_merge_vl (vti.Mask V0),
1172 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1174 def : Pat<(vti.Vector (riscv_vp_merge_vl (vti.Mask V0),
1180 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1182 def : Pat<(vti.Vector (riscv_vp_merge_vl (vti.Mask V0),
1188 (vti.Mask V0), GPR:$vl, vti.Log2SEW)>;
1301 def : Pat<(riscv_fsqrt_vl (vti.Vector vti.RegClass:$rs2), (vti.Mask true_mask),
1307 def : Pat<(riscv_fabs_vl (vti.Vector vti.RegClass:$rs), (vti.Mask true_mask),
1312 def : Pat<(riscv_fneg_vl (vti.Vector vti.RegClass:$rs), (vti.Mask V0),
1316 vti.RegClass:$rs, (vti.Mask V0), GPR:$vl, vti.Log2SEW,
1321 (vti.Mask true_mask),
1327 (vti.Mask true_mask),
1329 (vti.Mask true_mask),
1336 (vti.Mask true_mask),
1346 def : Pat<(fvti.Vector (riscv_vselect_vl (fvti.Mask V0),
1351 fvti.RegClass:$rs2, fvti.RegClass:$rs1, (fvti.Mask V0),
1354 def : Pat<(fvti.Vector (riscv_vselect_vl (fvti.Mask V0),
1361 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW)>;
1363 def : Pat<(fvti.Vector (riscv_vselect_vl (fvti.Mask V0),
1368 fvti.RegClass:$rs2, 0, (fvti.Mask V0), GPR:$vl, fvti.Log2SEW)>;
1370 def : Pat<(fvti.Vector (riscv_vp_merge_vl (fvti.Mask V0),
1375 fvti.RegClass:$rs2, fvti.RegClass:$rs2, fvti.RegClass:$rs1, (fvti.Mask V0),
1378 def : Pat<(fvti.Vector (riscv_vp_merge_vl (fvti.Mask V0),
1385 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW)>;
1387 def : Pat<(fvti.Vector (riscv_vp_merge_vl (fvti.Mask V0),
1392 fvti.RegClass:$rs2, fvti.RegClass:$rs2, 0, (fvti.Mask V0),
1434 (fvti.Mask V0),
1438 (fvti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
1450 (fwti.Mask V0),
1454 (fwti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
1457 (fwti.Mask V0),
1461 (fwti.Mask V0), GPR:$vl, fvti.Log2SEW, TAIL_AGNOSTIC)>;
1470 // 16.1 Vector Mask-Register Logical Instructions
1471 def : Pat<(mti.Mask (riscv_vmset_vl VLOpFrag)),
1473 def : Pat<(mti.Mask (riscv_vmclr_vl VLOpFrag)),
1476 def : Pat<(mti.Mask (riscv_vmand_vl VR:$rs1, VR:$rs2, VLOpFrag)),
1479 def : Pat<(mti.Mask (riscv_vmor_vl VR:$rs1, VR:$rs2, VLOpFrag)),
1482 def : Pat<(mti.Mask (riscv_vmxor_vl VR:$rs1, VR:$rs2, VLOpFrag)),
1486 def : Pat<(mti.Mask (riscv_vmand_vl VR:$rs1,
1491 def : Pat<(mti.Mask (riscv_vmor_vl VR:$rs1,
1497 def : Pat<(mti.Mask (riscv_vmxor_vl (riscv_vmnot_vl VR:$rs1,
1503 def : Pat<(mti.Mask (riscv_vmnot_vl (riscv_vmand_vl VR:$rs1, VR:$rs2,
1508 def : Pat<(mti.Mask (riscv_vmnot_vl (riscv_vmor_vl VR:$rs1, VR:$rs2,
1513 def : Pat<(mti.Mask (riscv_vmnot_vl (riscv_vmxor_vl VR:$rs1, VR:$rs2,
1520 def : Pat<(mti.Mask (riscv_vmnot_vl VR:$rs, VLOpFrag)),
1525 def : Pat<(XLenVT (riscv_vcpop_vl (mti.Mask VR:$rs2), (mti.Mask true_mask),
1529 def : Pat<(XLenVT (riscv_vcpop_vl (mti.Mask VR:$rs2), (mti.Mask V0),
1532 VR:$rs2, (mti.Mask V0), GPR:$vl, mti.Log2SEW)>;
1550 (vti.Mask V0),
1555 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1557 (vti.Mask V0),
1562 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1565 (vti.Mask V0),
1570 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1584 (vti.Mask V0),
1589 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1615 (vti.Mask V0),
1620 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1622 (vti.Mask V0),
1627 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1631 (vti.Mask V0),
1636 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1649 (vti.Mask V0),
1654 (vti.Mask V0), GPR:$vl, vti.Log2SEW, TAIL_AGNOSTIC)>;
1686 def : Pat<(vti.Vector (riscv_vid_vl (vti.Mask true_mask),
1692 GPR:$rs2, (vti.Mask true_mask),
1698 GPR:$rs2, (vti.Mask true_mask),
1704 GPR:$rs2, (vti.Mask true_mask),
1710 GPR:$rs2, (vti.Mask true_mask),
1719 uimm5:$rs2, (vti.Mask true_mask),
1727 GPR:$rs2, (vti.Mask true_mask),
1735 uimm5:$rs2, (vti.Mask true_mask),
1742 uimm5:$rs2, (vti.Mask true_mask),
1750 GPR:$rs2, (vti.Mask true_mask),
1757 GPR:$rs2, (vti.Mask true_mask),