aarch64: Add support for Armv8.8-A

This patch adds skeleton support for -march=armv8.8-a, testing only
that it correctly inherits from armv8.7-a.

include/
	* opcode/aarch64.h (AARCH64_FEATURE_V8_8): New macro.
	(AARCH64_ARCH_V8_8): Likewise.

gas/
	* doc/c-aarch64.texi: Document armv8.8-a.
	* config/tc-aarch64.c (aarch64_archs): Add armv8-8-a
	* testsuite/gas/aarch64/v8-8-a.s,
	* testsuite/gas/aarch64/v8-8-a.d: New test.
This commit is contained in:
Richard Sandiford
2021-12-02 15:00:56 +00:00
parent a346bb24cf
commit 175eafaf37
5 changed files with 13 additions and 2 deletions

View File

@@ -94,6 +94,7 @@ typedef uint32_t aarch64_insn;
#define AARCH64_FEATURE_V9 (1ULL << 56) /* Armv9.0-A processors. */
#define AARCH64_FEATURE_SME_F64 (1ULL << 57) /* SME F64. */
#define AARCH64_FEATURE_SME_I64 (1ULL << 58) /* SME I64. */
#define AARCH64_FEATURE_V8_8 (1ULL << 59) /* Armv8.8 processors. */
/* Crypto instructions are the combination of AES and SHA2. */
#define AARCH64_FEATURE_CRYPTO (AARCH64_FEATURE_SHA2 | AARCH64_FEATURE_AES)
@@ -141,6 +142,8 @@ typedef uint32_t aarch64_insn;
#define AARCH64_ARCH_V8_7 AARCH64_FEATURE (AARCH64_ARCH_V8_6, \
AARCH64_FEATURE_V8_7 \
| AARCH64_FEATURE_LS64)
#define AARCH64_ARCH_V8_8 AARCH64_FEATURE (AARCH64_ARCH_V8_7, \
AARCH64_FEATURE_V8_8)
#define AARCH64_ARCH_V8_R (AARCH64_FEATURE (AARCH64_ARCH_V8_4, \
AARCH64_FEATURE_V8_R) \
& ~(AARCH64_FEATURE_V8_A | AARCH64_FEATURE_LOR))