[clang] [lldb] [llvm] [AArch64] Reduce +sve2-aes to an alias of +sve-aes+sve2 (PR #114293)

Alexandros Lamprineas via cfe-commits cfe-commits at lists.llvm.org
Fri Nov 8 11:39:33 PST 2024


================
@@ -365,9 +365,12 @@ def FeatureSVE2 : ExtensionWithMArch<"sve2", "SVE2", "FEAT_SVE2",
   "Enable Scalable Vector Extension 2 (SVE2) instructions",
   [FeatureSVE, FeatureUseScalarIncVL]>;
 
-def FeatureSVE2AES : ExtensionWithMArch<"sve2-aes", "SVE2AES",
+def FeatureSVEAES : ExtensionWithMArch<"sve-aes", "SVEAES",
   "FEAT_SVE_AES, FEAT_SVE_PMULL128",
-  "Enable AES SVE2 instructions", [FeatureSVE2, FeatureAES]>;
+  "Enable SVE AES and quadword SVE polynomial multiply instructions", [FeatureAES]>;
+
+def AliasSVE2AES : ExtensionWithMArch<"sve2-aes", "ALIAS_SVE2AES", "",
----------------
labrinea wrote:

If you read at the definition of ExtensionWithMArch the second argument is used to generate the AEK_ field. See inside ./include/llvm/TargetParser/AArch64TargetParserDef.inc in the build directory. We now have this entry:
`{"sve2-aes", {}, AArch64::AEK_ALIAS_SVE2AES, "", "An alias of +sve2+sve-aes", "+sve2-aes", "-sve2-aes"},`
I think the ALIAS subexpression has no place in AEK.

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


More information about the cfe-commits mailing list