@@ -734,6 +734,7 @@ def HasStdExtZfhOrZvfh
734734def FeatureStdExtZvkb
735735 : RISCVExtension<"zvkb", 1, 0,
736736 "'Zvkb' (Vector Bit-manipulation used in Cryptography)">,
737+ [FeatureStdExtZve32x]>,
737738 RISCVExtensionBitmask<0, 52>;
738739def HasStdExtZvkb : Predicate<"Subtarget->hasStdExtZvkb()">,
739740 AssemblerPredicate<(all_of FeatureStdExtZvkb),
@@ -751,6 +752,7 @@ def HasStdExtZvbb : Predicate<"Subtarget->hasStdExtZvbb()">,
751752def FeatureStdExtZvbc
752753 : RISCVExtension<"zvbc", 1, 0,
753754 "'Zvbc' (Vector Carryless Multiplication)">,
755+ [FeatureStdExtZve64x]>,
754756 RISCVExtensionBitmask<0, 49>;
755757def HasStdExtZvbc : Predicate<"Subtarget->hasStdExtZvbc()">,
756758 AssemblerPredicate<(all_of FeatureStdExtZvbc),
@@ -767,6 +769,7 @@ def HasStdExtZvbcOrZvbc32e : Predicate<"Subtarget->hasStdExtZvbc() || Subtarget-
767769def FeatureStdExtZvkg
768770 : RISCVExtension<"zvkg", 1, 0,
769771 "'Zvkg' (Vector GCM instructions for Cryptography)">,
772+ [FeatureStdExtZve32x]>,
770773 RISCVExtensionBitmask<0, 53>;
771774def HasStdExtZvkg : Predicate<"Subtarget->hasStdExtZvkg()">,
772775 AssemblerPredicate<(all_of FeatureStdExtZvkg),
@@ -783,6 +786,7 @@ def HasStdExtZvkgs : Predicate<"Subtarget->hasStdExtZvkgs()">,
783786def FeatureStdExtZvkned
784787 : RISCVExtension<"zvkned", 1, 0,
785788 "'Zvkned' (Vector AES Encryption & Decryption (Single Round))">,
789+ [FeatureStdExtZve32x]>,
786790 RISCVExtensionBitmask<0, 54>;
787791def HasStdExtZvkned : Predicate<"Subtarget->hasStdExtZvkned()">,
788792 AssemblerPredicate<(all_of FeatureStdExtZvkned),
@@ -791,6 +795,7 @@ def HasStdExtZvkned : Predicate<"Subtarget->hasStdExtZvkned()">,
791795def FeatureStdExtZvknha
792796 : RISCVExtension<"zvknha", 1, 0,
793797 "'Zvknha' (Vector SHA-2 (SHA-256 only))">,
798+ [FeatureStdExtZve32x]>,
794799 RISCVExtensionBitmask<0, 55>;
795800def HasStdExtZvknha : Predicate<"Subtarget->hasStdExtZvknha()">,
796801 AssemblerPredicate<(all_of FeatureStdExtZvknha),
@@ -799,6 +804,7 @@ def HasStdExtZvknha : Predicate<"Subtarget->hasStdExtZvknha()">,
799804def FeatureStdExtZvknhb
800805 : RISCVExtension<"zvknhb", 1, 0,
801806 "'Zvknhb' (Vector SHA-2 (SHA-256 and SHA-512))">,
807+ [FeatureStdExtZve64x]>,
802808 RISCVExtensionBitmask<0, 56>;
803809def HasStdExtZvknhb : Predicate<"Subtarget->hasStdExtZvknhb()">,
804810 AssemblerPredicate<(all_of FeatureStdExtZvknhb),
@@ -811,6 +817,7 @@ def HasStdExtZvknhaOrZvknhb : Predicate<"Subtarget->hasStdExtZvknha() || Subtarg
811817def FeatureStdExtZvksed
812818 : RISCVExtension<"zvksed", 1, 0,
813819 "'Zvksed' (SM4 Block Cipher Instructions)">,
820+ [FeatureStdExtZve32x]>,
814821 RISCVExtensionBitmask<0, 57>;
815822def HasStdExtZvksed : Predicate<"Subtarget->hasStdExtZvksed()">,
816823 AssemblerPredicate<(all_of FeatureStdExtZvksed),
@@ -819,6 +826,7 @@ def HasStdExtZvksed : Predicate<"Subtarget->hasStdExtZvksed()">,
819826def FeatureStdExtZvksh
820827 : RISCVExtension<"zvksh", 1, 0,
821828 "'Zvksh' (SM3 Hash Function Instructions)">,
829+ [FeatureStdExtZve32x]>,
822830 RISCVExtensionBitmask<0, 58>;
823831def HasStdExtZvksh : Predicate<"Subtarget->hasStdExtZvksh()">,
824832 AssemblerPredicate<(all_of FeatureStdExtZvksh),
0 commit comments