@@ -560,28 +560,13 @@ def HasStdExtZvkg : Predicate<"Subtarget->hasStdExtZvkg()">,
560
560
AssemblerPredicate<(all_of FeatureStdExtZvkg),
561
561
"'Zvkg' (Vector GCM instructions for Cryptography)">;
562
562
563
- def FeatureStdExtZvkn
564
- : SubtargetFeature<"experimental-zvkn", "HasStdExtZvkn", "true",
565
- "This extension is shorthand for the following set of "
566
- "other extensions: Zvkned, Zvknhb, Zvbb, Zvbc, and Zvkt.">;
567
-
568
- def FeatureStdExtZvknc
569
- : SubtargetFeature<"experimental-zvknc", "HasStdExtZvknc", "true",
570
- "This extension is shorthand for the following set of "
571
- "other extensions: Zvkn and Zvbc.">;
572
-
573
563
def FeatureStdExtZvkned
574
564
: SubtargetFeature<"experimental-zvkned", "HasStdExtZvkned", "true",
575
565
"'Zvkned' (Vector AES Encryption & Decryption (Single Round))">;
576
566
def HasStdExtZvkned : Predicate<"Subtarget->hasStdExtZvkned()">,
577
567
AssemblerPredicate<(all_of FeatureStdExtZvkned),
578
568
"'Zvkned' (Vector AES Encryption & Decryption (Single Round))">;
579
569
580
- def FeatureStdExtZvkng
581
- : SubtargetFeature<"experimental-zvkng", "HasStdExtZvkng", "true",
582
- "This extension is shorthand for the following set of "
583
- "other extensions: Zvkn and Zvkg.">;
584
-
585
570
def FeatureStdExtZvknha
586
571
: SubtargetFeature<"experimental-zvknha", "HasStdExtZvknha", "true",
587
572
"'Zvknha' (Vector SHA-2 (SHA-256 only))">;
@@ -594,28 +579,13 @@ def HasStdExtZvknha : Predicate<"Subtarget->hasStdExtZvknha()">,
594
579
AssemblerPredicate<(all_of FeatureStdExtZvknha),
595
580
"'Zvknha' (Vector SHA-2 (SHA-256 only))">;
596
581
597
- def FeatureStdExtZvks
598
- : SubtargetFeature<"experimental-zvks", "HasStdExtZvks", "true",
599
- "This extension is shorthand for the following set of "
600
- "other extensions: Zvksed, Zvksh, Zvbb, Zvbc, and Zvkt.">;
601
-
602
- def FeatureStdExtZvksc
603
- : SubtargetFeature<"experimental-zvksc", "HasStdExtZvksc", "true",
604
- "This extension is shorthand for the following set of "
605
- "other extensions: Zvks and Zvbc.">;
606
-
607
582
def FeatureStdExtZvksed
608
583
: SubtargetFeature<"experimental-zvksed", "HasStdExtZvksed", "true",
609
584
"'Zvksed' (SM4 Block Cipher Instructions)">;
610
585
def HasStdExtZvksed : Predicate<"Subtarget->hasStdExtZvksed()">,
611
586
AssemblerPredicate<(all_of FeatureStdExtZvksed),
612
587
"'Zvksed' (SM4 Block Cipher Instructions)">;
613
588
614
- def FeatureStdExtZvksg
615
- : SubtargetFeature<"experimental-zvksg", "HasStdExtZvksg", "true",
616
- "This extension is shorthand for the following set of "
617
- "other extensions: Zvks and Zvkg.">;
618
-
619
589
def FeatureStdExtZvksh
620
590
: SubtargetFeature<"experimental-zvksh", "HasStdExtZvksh", "true",
621
591
"'Zvksh' (SM3 Hash Function Instructions)">;
@@ -627,6 +597,46 @@ def FeatureStdExtZvkt
627
597
: SubtargetFeature<"experimental-zvkt", "HasStdExtZvkt", "true",
628
598
"'Zvkt' (Vector Data-Independent Execution Latency)">;
629
599
600
+ // Zvk short-hand extensions
601
+
602
+ def FeatureStdExtZvkn
603
+ : SubtargetFeature<"experimental-zvkn", "HasStdExtZvkn", "true",
604
+ "This extension is shorthand for the following set of "
605
+ "other extensions: Zvkned, Zvknhb, Zvbb and Zvkt.",
606
+ [FeatureStdExtZvkned, FeatureStdExtZvknhb,
607
+ FeatureStdExtZvbb, FeatureStdExtZvkt]>;
608
+
609
+ def FeatureStdExtZvknc
610
+ : SubtargetFeature<"experimental-zvknc", "HasStdExtZvknc", "true",
611
+ "This extension is shorthand for the following set of "
612
+ "other extensions: Zvkn and Zvbc.",
613
+ [FeatureStdExtZvkn, FeatureStdExtZvbc]>;
614
+
615
+ def FeatureStdExtZvkng
616
+ : SubtargetFeature<"experimental-zvkng", "HasStdExtZvkng", "true",
617
+ "This extension is shorthand for the following set of "
618
+ "other extensions: Zvkn and Zvkg.",
619
+ [FeatureStdExtZvkn, FeatureStdExtZvkg]>;
620
+
621
+ def FeatureStdExtZvks
622
+ : SubtargetFeature<"experimental-zvks", "HasStdExtZvks", "true",
623
+ "This extension is shorthand for the following set of "
624
+ "other extensions: Zvksed, Zvksh, Zvbb and Zvkt.",
625
+ [FeatureStdExtZvksed, FeatureStdExtZvksh,
626
+ FeatureStdExtZvbb, FeatureStdExtZvkt]>;
627
+
628
+ def FeatureStdExtZvksc
629
+ : SubtargetFeature<"experimental-zvksc", "HasStdExtZvksc", "true",
630
+ "This extension is shorthand for the following set of "
631
+ "other extensions: Zvks and Zvbc.",
632
+ [FeatureStdExtZvks, FeatureStdExtZvbc]>;
633
+
634
+ def FeatureStdExtZvksg
635
+ : SubtargetFeature<"experimental-zvksg", "HasStdExtZvksg", "true",
636
+ "This extension is shorthand for the following set of "
637
+ "other extensions: Zvks and Zvkg.",
638
+ [FeatureStdExtZvks, FeatureStdExtZvkg]>;
639
+
630
640
def FeatureStdExtZicond
631
641
: SubtargetFeature<"experimental-zicond", "HasStdExtZicond", "true",
632
642
"'Zicond' (Integer Conditional Operations)">;
0 commit comments