From: Matthew Wahab Date: Thu, 19 Nov 2015 09:24:14 +0000 (+0000) Subject: [ARM] Add ARMv8.2 architecture feature and command line option. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=16b3231949ebd6915737bef5c03a025edf5619fb;p=thirdparty%2Fbinutils-gdb.git [ARM] Add ARMv8.2 architecture feature and command line option. ARMv8.2 is an architectural extension of ARMv8. This patch adds an architecture feature macro for ARMv8.2 to the binutils ARM target with GAS command line option -march=armv8.2-a. gas/ 2015-11-19 Matthew Wahab * config/tc-arm.c (arm_archs): Add "armv8.2-a". * doc/c-arm.texi (-march): Add "armv8.2-a". include/opcode/ 2015-11-19 Matthew Wahab * arm.h (ARM_EXT2_V8_2A): New. (ARM_ARCH_V8_2A): New. Change-Id: I9e0f50e3c6cea24e6b87b8b862fd4e1cdcc1052e --- diff --git a/gas/ChangeLog b/gas/ChangeLog index bb94e21c1e7..c5c0dfef14a 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2015-11-19 Matthew Wahab + + * config/tc-arm.c (arm_archs): Add "armv8.2-a". + * doc/c-arm.texi (-march): Add "armv8.2-a". + 2015-11-19 Matthew Wahab * config/tc-aarch64.c (aarch64_archs): Add "armv8.2-a". diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 160173887df..cde006eb128 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -24534,6 +24534,7 @@ static const struct arm_arch_option_table arm_archs[] = ARM_ARCH_OPT ("armv7e-m", ARM_ARCH_V7EM, FPU_ARCH_VFP), ARM_ARCH_OPT ("armv8-a", ARM_ARCH_V8A, FPU_ARCH_VFP), ARM_ARCH_OPT ("armv8.1-a", ARM_ARCH_V8_1A, FPU_ARCH_VFP), + ARM_ARCH_OPT ("armv8.2-a", ARM_ARCH_V8_2A, FPU_ARCH_VFP), ARM_ARCH_OPT ("xscale", ARM_ARCH_XSCALE, FPU_ARCH_VFP), ARM_ARCH_OPT ("iwmmxt", ARM_ARCH_IWMMXT, FPU_ARCH_VFP), ARM_ARCH_OPT ("iwmmxt2", ARM_ARCH_IWMMXT2,FPU_ARCH_VFP), diff --git a/gas/doc/c-arm.texi b/gas/doc/c-arm.texi index 23ac8493ca8..b6ce0c56af2 100644 --- a/gas/doc/c-arm.texi +++ b/gas/doc/c-arm.texi @@ -209,6 +209,7 @@ names are recognized: @code{armv7e-m}, @code{armv8-a}, @code{armv8.1-a}, +@code{armv8.2-a}, @code{iwmmxt} and @code{xscale}. diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index cf0879d81b7..f1a849120c4 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,8 @@ +2015-11-19 Matthew Wahab + + * arm.h (ARM_EXT2_V8_2A): New. + (ARM_ARCH_V8_2A): New. + 2015-11-19 Matthew Wahab * aarch64.h (AARCH64_FEATURE_V8_2): New. diff --git a/include/opcode/arm.h b/include/opcode/arm.h index 0fbce91cc66..98a3429ef77 100644 --- a/include/opcode/arm.h +++ b/include/opcode/arm.h @@ -58,6 +58,7 @@ #define ARM_EXT_VIRT 0x80000000 /* Virtualization extensions. */ #define ARM_EXT2_PAN 0x00000001 /* PAN extension. */ +#define ARM_EXT2_V8_2A 0x00000002 /* ARM V8.2A. */ /* Co-processor space extensions. */ #define ARM_CEXT_XSCALE 0x00000001 /* Allow MIA etc. */ @@ -249,6 +250,8 @@ #define ARM_ARCH_V7EM ARM_FEATURE_CORE_LOW (ARM_AEXT_V7EM) #define ARM_ARCH_V8A ARM_FEATURE_CORE_LOW (ARM_AEXT_V8A) #define ARM_ARCH_V8_1A ARM_FEATURE_CORE (ARM_AEXT_V8A, ARM_EXT2_PAN) +#define ARM_ARCH_V8_2A ARM_FEATURE_CORE (ARM_AEXT_V8A, \ + ARM_EXT2_PAN | ARM_EXT2_V8_2A) /* Some useful combinations: */ #define ARM_ARCH_NONE ARM_FEATURE_LOW (0, 0)