aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMatthew Wahab <matthew.wahab@arm.com>2016-06-07 09:56:42 +0100
committerMatthew Wahab <matthew.wahab@arm.com>2016-06-07 09:56:42 +0100
commit4d1464f294405a064d84e3d4f15c1ceff3639add (patch)
treef518e972a16d636ea236f7c3a78a85a995618c45 /include
parente5f5f1fc4982db8f1d4859b91a4caf4caef2e127 (diff)
downloadgdb-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/ChangeLog6
-rw-r--r--include/opcode/arm.h7
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)