aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2021-12-16 09:32:00 +0000
committerRichard Sandiford <richard.sandiford@arm.com>2021-12-16 09:32:00 +0000
commitb3e4d9326faf88d83745379f254d56b8a8324b63 (patch)
treee7bfa6bcfcde9b2cd862001af4e75f59d4310820 /include
parent3518022233e6b757c57d3deb7723fd91214fe036 (diff)
downloadbinutils-b3e4d9326faf88d83745379f254d56b8a8324b63.zip
binutils-b3e4d9326faf88d83745379f254d56b8a8324b63.tar.gz
binutils-b3e4d9326faf88d83745379f254d56b8a8324b63.tar.bz2
arm: Add support for Armv8.7-A and Armv8.8-A
This patch adds AArch32 support for -march=armv8.[78]-a. The behaviour of the new options can be expressed using a combination of existing feature flags and tables. The cpu_arch_ver entries are technically redundant but it seemed less surprising to include them anyway. include/ * opcode/arm.h (ARM_ARCH_V8_7A, ARM_ARCH_V8_8A): New macros. gas/ * doc/c-arm.texi: Add armv8.7-a and armv8.8-a. * config/tc-arm.c (armv87a_ext_table, armv88a_ext_table): New macros. (arm_archs): Add armv8.7-a and armv8.8-a. (cpu_arch_ver): Add ARM_ARCH_V8_7A and ARM_ARCH_V8_8A. * NEWS: Mention the above. * testsuite/gas/arm/attr-march-armv8_7-a.d: New test. * testsuite/gas/arm/attr-march-armv8_8-a.d: Likewise. * testsuite/gas/arm/bfloat16-armv8.7-a.d: Likewise. * testsuite/gas/arm/bfloat16-armv8.8-a.d: Likewise. * testsuite/gas/arm/i8mm-armv8.7-a.d: Likewise. * testsuite/gas/arm/i8mm-armv8.8-a.d: Likewise.
Diffstat (limited to 'include')
-rw-r--r--include/opcode/arm.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/opcode/arm.h b/include/opcode/arm.h
index cf72b90..8cf4856 100644
--- a/include/opcode/arm.h
+++ b/include/opcode/arm.h
@@ -377,6 +377,8 @@
#define ARM_ARCH_V8_6A ARM_FEATURE (ARM_AEXT_V8A, ARM_AEXT2_V8_6A \
| ARM_EXT2_CRC, FPU_NEON_EXT_RDMA \
| FPU_NEON_EXT_DOTPROD)
+#define ARM_ARCH_V8_7A ARM_ARCH_V8_6A
+#define ARM_ARCH_V8_8A ARM_ARCH_V8_7A
#define ARM_ARCH_V8M_BASE ARM_FEATURE_CORE (ARM_AEXT_V8M_BASE, \
ARM_AEXT2_V8M_BASE)
#define ARM_ARCH_V8M_MAIN ARM_FEATURE_CORE (ARM_AEXT_V8M_MAIN, \