Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 14 | pmbaty | 1 | let TargetPrefix = "riscv" in { |
| 2 | |||
| 3 | class TH_VdotTernaryWideMasked |
||
| 4 | : DefaultAttrsIntrinsic< [llvm_anyvector_ty], |
||
| 5 | [LLVMMatchType<0>, llvm_any_ty, llvm_anyvector_ty, |
||
| 6 | LLVMScalarOrSameVectorWidth<2, llvm_i1_ty>, |
||
| 7 | llvm_anyint_ty, LLVMMatchType<3>], |
||
| 8 | [ImmArg<ArgIndex<5>>, IntrNoMem]>, RISCVVIntrinsic { |
||
| 9 | let ScalarOperand = 1; |
||
| 10 | let VLOperand = 4; |
||
| 11 | } |
||
| 12 | |||
| 13 | multiclass TH_VdotTernaryWide { |
||
| 14 | def "int_riscv_" # NAME : RISCVTernaryWideUnMasked; |
||
| 15 | def "int_riscv_" # NAME # "_mask" : TH_VdotTernaryWideMasked; |
||
| 16 | } |
||
| 17 | |||
| 18 | defm th_vmaqa : TH_VdotTernaryWide; |
||
| 19 | defm th_vmaqau : TH_VdotTernaryWide; |
||
| 20 | defm th_vmaqasu : TH_VdotTernaryWide; |
||
| 21 | defm th_vmaqaus : TH_VdotTernaryWide; |
||
| 22 | } |