}
}
-multiclass VPseudoTernary<VReg RetClass,
- RegisterClass Op1Class,
- DAGOperand Op2Class,
- LMULInfo MInfo,
- string Constraint = ""> {
- let VLMul = MInfo.value in {
- def "_" # MInfo.MX : VPseudoTernaryNoMask<RetClass, Op1Class, Op2Class, Constraint>;
- def "_" # MInfo.MX # "_MASK" : VPseudoBinaryMask<RetClass, Op1Class, Op2Class, Constraint>;
- }
-}
-
-multiclass VPseudoTernaryNoMaskNoPolicy<VReg RetClass,
- RegisterClass Op1Class,
- DAGOperand Op2Class,
- LMULInfo MInfo,
- string Constraint = ""> {
- let VLMul = MInfo.value in {
- def "_" # MInfo.MX : VPseudoTernaryNoMask<RetClass, Op1Class, Op2Class, Constraint>;
- def "_" # MInfo.MX # "_MASK" : VPseudoBinaryMaskPolicy<RetClass, Op1Class, Op2Class,
- Constraint>;
- }
-}
-
multiclass VPseudoTernaryWithTailPolicy<VReg RetClass,
RegisterClass Op1Class,
DAGOperand Op2Class,
}
}
-multiclass VPseudoConversionW_V {
- defvar constraint = "@earlyclobber $rd";
- foreach m = MxListW in
- defm _V : VPseudoConversion<m.wvrclass, m.vrclass, m, constraint>;
-}
-
multiclass VPseudoVWCVTI_V {
defvar constraint = "@earlyclobber $rd";
foreach m = MxListFW in {