[clang] [compiler-rt] [llvm] [AArch64] Split FeatureMTE to FEAT_MTE and FEAT_MTE2. (PR #109299)

Tomas Matheson via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 27 03:40:17 PDT 2024


================
@@ -1059,7 +1059,7 @@ bool AArch64TargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
       HasFullFP16 = true;
       HasFP16FML = true;
     }
-    if (Feature == "+mte")
+    if (Feature == "+mte2")
----------------
tmatheson-arm wrote:

This breaks backwards compatibility of IR. _If_ you want to go ahead with this patch (which is fundamentally just a change to the internal representation of features) then I would suggest breaking backwards compatibility by having `target-feature="+mte"` mean FEAT_MTE and `target-feature="+mte2"` mean FEAT_MTE2. Then if anyone happens to be using MTE2 instructions in inline assembly with `target-feature="+mte"` they will get an error, but for the vast majority of cases, the change from FEAT_MTE2 to FEAT_MTE for `target-feature="+mte"` will have no effect.

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


More information about the llvm-commits mailing list