[clang] [RISCV] Fix wrong implication for zvknhb. (PR #66860)

Brandon Wu via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 21 19:34:11 PDT 2023


================
@@ -599,15 +599,21 @@ def HasStdExtZvkned : Predicate<"Subtarget->hasStdExtZvkned()">,
 def FeatureStdExtZvknha
     : SubtargetFeature<"experimental-zvknha", "HasStdExtZvknha", "true",
                        "'Zvknha' (Vector SHA-2 (SHA-256 only))">;
-
-def FeatureStdExtZvknhb
-    : SubtargetFeature<"experimental-zvknhb", "HasStdExtZvknhb", "true",
-                       "'Zvknhb' (Vector SHA-2 (SHA-256 and SHA-512))",
-                       [FeatureStdExtZvknha]>;
 def HasStdExtZvknha : Predicate<"Subtarget->hasStdExtZvknha()">,
                                 AssemblerPredicate<(all_of FeatureStdExtZvknha),
                                 "'Zvknha' (Vector SHA-2 (SHA-256 only))">;
 
+def FeatureStdExtZvknhb
+    : SubtargetFeature<"experimental-zvknhb", "HasStdExtZvknhb", "true",
+                       "'Zvknhb' (Vector SHA-2 (SHA-256 and SHA-512))">;
----------------
4vtomat wrote:

My colleague just show me the [spec](https://github.com/riscv/riscv-crypto/blob/main/doc/vector/riscv-crypto-spec-vector.adoc#1-extensions-overview) has mentioned: "The [Zvknhb](https://github.com/llvm/llvm-project/pull/66860#zvknh) and [[zvbc]](https://github.com/llvm/llvm-project/pull/66860#zvbc) Vector Crypto Extensions --and accordingly the composite extensions [[Zvkn]](https://github.com/llvm/llvm-project/pull/66860#Zvkn) and [[Zvks]](https://github.com/llvm/llvm-project/pull/66860#Zvks)-- require a Zve64x base, or application ("V") base Vector Extension."
so I think those checks should be moved to **ImpliedExts***.


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


More information about the cfe-commits mailing list