[llvm] 5567601 - [AArch64] Prevent reuse of retired architecture names (#221782)

via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 22 06:31:09 PDT 2026


Author: Jonathan Thackray
Date: 2026-09-22T14:31:03+01:00
New Revision: 55676019676cae0565d8771252f05bc2a222a0a0

URL: https://github.com/llvm/llvm-project/commit/55676019676cae0565d8771252f05bc2a222a0a0
DIFF: https://github.com/llvm/llvm-project/commit/55676019676cae0565d8771252f05bc2a222a0a0.diff

LOG: [AArch64] Prevent reuse of retired architecture names (#221782)

Add negative tests preventing reuse of retired feature and system register names.

When system registers or feature names are retired, they should be appended to
this file, to ensure they're never re-used in future. `FEAT_MPAMv2` and `FEAT_TME`
are the two features which have been intentionally retired so far.

Added: 
    llvm/test/MC/AArch64/retired-feature-names.s
    llvm/test/MC/AArch64/retired-register-names.s

Modified: 
    

Removed: 
    


################################################################################
diff  --git a/llvm/test/MC/AArch64/retired-feature-names.s b/llvm/test/MC/AArch64/retired-feature-names.s
new file mode 100644
index 0000000000000..0b5cc06a2ef98
--- /dev/null
+++ b/llvm/test/MC/AArch64/retired-feature-names.s
@@ -0,0 +1,9 @@
+// RUN: llvm-mc -triple=aarch64 -mattr=+mpamv2,+tme < %s 2>&1 | FileCheck %s
+
+// Add negative tests preventing reuse of retired feature names.
+//
+// When feature names are retired, they should be appended to
+// this file, to ensure they're never re-used in future.
+
+// CHECK:      '+mpamv2' is not a recognized feature for this target (ignoring feature)
+// CHECK-NEXT: '+tme' is not a recognized feature for this target (ignoring feature)

diff  --git a/llvm/test/MC/AArch64/retired-register-names.s b/llvm/test/MC/AArch64/retired-register-names.s
new file mode 100644
index 0000000000000..56a483698e90e
--- /dev/null
+++ b/llvm/test/MC/AArch64/retired-register-names.s
@@ -0,0 +1,18 @@
+// RUN: not llvm-mc -triple=aarch64 -mattr=+all < %s 2>&1 | FileCheck %s
+
+// Add negative tests preventing reuse of retired system register names.
+//
+// When system registers are retired, they should be appended to
+// this file, to ensure they're never re-used in future.
+
+mrs x0, mpamvidcr_el2
+// CHECK:      :[[@LINE-1]]:9: error: expected readable system register
+// CHECK-NEXT: mrs x0, mpamvidcr_el2
+
+mrs x0, mpamvidsr_el2
+// CHECK:      :[[@LINE-1]]:9: error: expected readable system register
+// CHECK-NEXT: mrs x0, mpamvidsr_el2
+
+mrs x0, mpamvidsr_el3
+// CHECK:      :[[@LINE-1]]:9: error: expected readable system register
+// CHECK-NEXT: mrs x0, mpamvidsr_el3


        


More information about the llvm-commits mailing list