diff options
author | Matthew Wahab <matthew.wahab@arm.com> | 2016-06-07 09:56:42 +0100 |
---|---|---|
committer | Matthew Wahab <matthew.wahab@arm.com> | 2016-06-07 09:56:42 +0100 |
commit | 4d1464f294405a064d84e3d4f15c1ceff3639add (patch) | |
tree | f518e972a16d636ea236f7c3a78a85a995618c45 /include | |
parent | e5f5f1fc4982db8f1d4859b91a4caf4caef2e127 (diff) | |
download | gdb-4d1464f294405a064d84e3d4f15c1ceff3639add.zip gdb-4d1464f294405a064d84e3d4f15c1ceff3639add.tar.gz gdb-4d1464f294405a064d84e3d4f15c1ceff3639add.tar.bz2 |
[ARM] Add command line option for RAS extension.
This patch adds the architecture extension "+ras" to enable RAS
support. It is enabled by default for -march=armv8.2-a and available but
disabled by default for armv8-a and armv8.1-a.
gas/
* config/tc-arm.c (arm_ext_v8_2): Rename to arm_ext_ras.
(arm_ext_ras): Renamed from arm_ext_v8_2.
(insns): Update for arm_ext_v8_2 renaming.
(arm_extensions): Add "ras".
* doc/c-arm.texi (ARM Options): Add an entry for "ras".
* testsuite/gas/arm/armv8-a+ras.d: New.
* testsuite/gas/arm/armv8_2-a.d: Add explicit command line
options.
include/
* opcode/arm.h (ARM_EXT2_RAS): New. Also align preceding
entries.
(ARM_AEXT_V8_2A): Add ARM_EXT2_RAS.
opcodes/
* arm-dis.c (arm_opcodes): Replace ARM_EXT_V8_2A with
ARM_EXT_RAS in relevant entries.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 6 | ||||
-rw-r--r-- | include/opcode/arm.h | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 607eba0..abf5a52 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,9 @@ +2016-06-07 Matthew Wahab <matthew.wahab@arm.com> + + * opcode/arm.h (ARM_EXT2_RAS): New. Also align preceding + entries. + (ARM_AEXT_V8_2A): Add ARM_EXT2_RAS. + 2016-06-02 Andrew Burgess <andrew.burgess@embecosm.com> * opcode/arc.h (MAX_INSN_ARGS): Increase to 16. diff --git a/include/opcode/arm.h b/include/opcode/arm.h index c8883db..24a66b8 100644 --- a/include/opcode/arm.h +++ b/include/opcode/arm.h @@ -60,9 +60,10 @@ #define ARM_EXT2_V8_2A 0x00000002 /* ARM V8.2A. */ #define ARM_EXT2_V8M 0x00000004 /* ARM V8M. */ #define ARM_EXT2_ATOMICS 0x00000008 /* ARMv8 atomics. */ -#define ARM_EXT2_V6T2_V8M 0x00000010 /* V8M Baseline from V6T2. */ +#define ARM_EXT2_V6T2_V8M 0x00000010 /* V8M Baseline from V6T2. */ #define ARM_EXT2_FP16_INST 0x00000020 /* ARM V8.2A FP16 instructions. */ -#define ARM_EXT2_V8M_MAIN 0x00000040 /* ARMv8-M Mainline. */ +#define ARM_EXT2_V8M_MAIN 0x00000040 /* ARMv8-M Mainline. */ +#define ARM_EXT2_RAS 0x00000080 /* RAS extension. */ /* Co-processor space extensions. */ #define ARM_CEXT_XSCALE 0x00000001 /* Allow MIA etc. */ @@ -147,7 +148,7 @@ | ARM_EXT_VIRT | ARM_EXT_V8) #define ARM_AEXT2_V8A (ARM_EXT2_V6T2_V8M | ARM_EXT2_ATOMICS) #define ARM_AEXT2_V8_1A (ARM_AEXT2_V8A | ARM_EXT2_PAN) -#define ARM_AEXT2_V8_2A (ARM_AEXT2_V8_1A | ARM_EXT2_V8_2A) +#define ARM_AEXT2_V8_2A (ARM_AEXT2_V8_1A | ARM_EXT2_V8_2A | ARM_EXT2_RAS) #define ARM_AEXT_V8M_BASE (ARM_AEXT_V6SM | ARM_EXT_DIV) #define ARM_AEXT_V8M_MAIN ARM_AEXT_V7M #define ARM_AEXT2_V8M (ARM_EXT2_V8M | ARM_EXT2_ATOMICS | ARM_EXT2_V6T2_V8M) |