IntrinsicsRISCVXTHead.td 771 B

12345678910111213141516171819202122
  1. let TargetPrefix = "riscv" in {
  2. class TH_VdotTernaryWideMasked
  3. : DefaultAttrsIntrinsic< [llvm_anyvector_ty],
  4. [LLVMMatchType<0>, llvm_any_ty, llvm_anyvector_ty,
  5. LLVMScalarOrSameVectorWidth<2, llvm_i1_ty>,
  6. llvm_anyint_ty, LLVMMatchType<3>],
  7. [ImmArg<ArgIndex<5>>, IntrNoMem]>, RISCVVIntrinsic {
  8. let ScalarOperand = 1;
  9. let VLOperand = 4;
  10. }
  11. multiclass TH_VdotTernaryWide {
  12. def "int_riscv_" # NAME : RISCVTernaryWideUnMasked;
  13. def "int_riscv_" # NAME # "_mask" : TH_VdotTernaryWideMasked;
  14. }
  15. defm th_vmaqa : TH_VdotTernaryWide;
  16. defm th_vmaqau : TH_VdotTernaryWide;
  17. defm th_vmaqasu : TH_VdotTernaryWide;
  18. defm th_vmaqaus : TH_VdotTernaryWide;
  19. }