[llvm] [RISCV] Add GetVTypeMinimalPredicates for the operation supported by zvfhmin. NFC. (PR #143847)

Jim Lin via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 13 00:02:00 PDT 2025


================
@@ -4568,7 +4577,7 @@ multiclass VPatUnaryS_M<string intrinsic_name,
 multiclass VPatUnaryV_V_AnyMask<string intrinsic, string instruction,
                                 list<VTypeInfo> vtilist> {
   foreach vti = vtilist in {
-    let Predicates = GetVTypePredicates<vti>.Predicates in
+    let Predicates = GetVTypeMinimalPredicates<vti>.Predicates in
----------------
tclin914 wrote:

> Why weren't any tests failing if we using the wrong predicate?

Currently, only `int_riscv_vcompress` uses the multiclass `VPatUnaryV_V_AnyMask`.
Originally, the predicate for the fp16 vector type was written as:
```
let Predicates = [HasVInstructionsF16Minimal] in
  defm : VPatUnaryV_V_AnyMask<"int_riscv_vcompress", "PseudoVCOMPRESS", AllFP16Vectors>;
```
I simply moved this predicate into the multiclass `VPatUnaryV_V_AnyMask` by replacing `GetVTypePredicates` with `GetVTypeMinimalPredicates.`

I hope I didn’t misunderstand your concern.

https://github.com/llvm/llvm-project/pull/143847


More information about the llvm-commits mailing list