aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPrzemyslaw Wirkus <przemyslaw.wirkus@arm.com>2021-09-30 20:44:17 +0100
committerPrzemyslaw Wirkus <przemyslaw.wirkus@arm.com>2021-09-30 20:44:17 +0100
commitd5007f0280d881a8add44e6a68a3f536e138244c (patch)
tree9c08739cc9dfe7b4d88ec691390a91b0ab131253 /include
parent4dfef5be6812dd7abfbc8f18e9c0384f2522b511 (diff)
downloadbinutils-d5007f0280d881a8add44e6a68a3f536e138244c.zip
binutils-d5007f0280d881a8add44e6a68a3f536e138244c.tar.gz
binutils-d5007f0280d881a8add44e6a68a3f536e138244c.tar.bz2
aarch64: add armv9-a architecture to -march
Patch is adding new 'armv9-a` command line flag to -march for AArch64. gas/ * config/tc-aarch64.c: Add 'armv9-a' command line flag. * docs/c-aarch64.text: Update docs. * NEWS: Update docs. include/ * opcode/aarch64.h (AARCH64_FEATURE_V9): New define. (AARCH64_ARCH_V9): New define.
Diffstat (limited to 'include')
-rw-r--r--include/opcode/aarch64.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h
index 2bbd593..420b211 100644
--- a/include/opcode/aarch64.h
+++ b/include/opcode/aarch64.h
@@ -90,6 +90,7 @@ typedef uint32_t aarch64_insn;
#define AARCH64_FEATURE_F32MM (1ULL << 53)
#define AARCH64_FEATURE_F64MM (1ULL << 54)
#define AARCH64_FEATURE_FLAGM (1ULL << 55) /* v8.4 Flag Manipulation. */
+#define AARCH64_FEATURE_V9 (1ULL << 56) /* Armv9.0-A processors. */
/* Crypto instructions are the combination of AES and SHA2. */
#define AARCH64_FEATURE_CRYPTO (AARCH64_FEATURE_SHA2 | AARCH64_FEATURE_AES)
@@ -140,6 +141,10 @@ typedef uint32_t aarch64_insn;
#define AARCH64_ARCH_V8_R (AARCH64_FEATURE (AARCH64_ARCH_V8_4, \
AARCH64_FEATURE_V8_R) \
& ~(AARCH64_FEATURE_V8_A | AARCH64_FEATURE_LOR))
+#define AARCH64_ARCH_V9 AARCH64_FEATURE (AARCH64_ARCH_V8_5, \
+ AARCH64_FEATURE_SVE \
+ | AARCH64_FEATURE_SVE2 \
+ | AARCH64_FEATURE_V9)
#define AARCH64_ARCH_NONE AARCH64_FEATURE (0, 0)
#define AARCH64_ANY AARCH64_FEATURE (-1, 0) /* Any basic core. */