aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPrzemyslaw Wirkus <przemyslaw.wirkus@arm.com>2020-11-04 20:47:06 +0000
committerPrzemyslaw Wirkus <przemyslaw.wirkus@arm.com>2020-11-04 20:54:13 +0000
commit55cc0128349868bec27c472d083cd5aa4271828b (patch)
treefd6c990616f890768fd2bd4e4355a90c0ae7cba4 /include
parent9c91c7259122af572d50e5422c982201e4003d04 (diff)
downloadgdb-55cc0128349868bec27c472d083cd5aa4271828b.zip
gdb-55cc0128349868bec27c472d083cd5aa4271828b.tar.gz
gdb-55cc0128349868bec27c472d083cd5aa4271828b.tar.bz2
aarch64: Update feature RAS system registers
This patch: + updates RAS feature system registers with new RAS 1.1 regs. + extends RAS/RAS 1.1 support for all architecture levels of Armv8-A. Please note that early Armv8-A architectures do not officially support RAS extension. Rationale of the patch: To ease development so that user-friendly RAS system registers operands can be used. Certain use cases require developers to enable only more generic architecture (e.g. -march=armv8-a) during system development. Users must use RAS extension registers bearing in mind that system they use must support it. The RAS (Reliability, Availability, Serviceability) extension is a system-level extension that defines a number of system registers. RAS 1.1 (FEAT_RASv1p1) introduces five new system registers: ERXPFGCTL_EL1, ERXPFGCDN_EL1, ERXMISC2_EL1, ERXMISC3_EL1 and ERXPFGF_EL1. For details see [0]. [0] https://developer.arm.com/docs/ddi0595/i/
Diffstat (limited to 'include')
-rw-r--r--include/ChangeLog5
-rw-r--r--include/opcode/aarch64.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index b403c5c..252b494 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2020-11-04 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
+
+ * opcode/aarch64.h (AARCH64_ARCH_V8): Add RAS to Armv8-A.
+ (AARCH64_ARCH_V8_2): Remove RAS from Armv8.2-A set.
+
2020-11-03 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
* opcode/aarch64.h (AARCH64_FEATURE_LS64): New +ls64 feature flag.
diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h
index 07eb911..efa2657 100644
--- a/include/opcode/aarch64.h
+++ b/include/opcode/aarch64.h
@@ -97,6 +97,7 @@ typedef uint32_t aarch64_insn;
#define AARCH64_ARCH_V8 AARCH64_FEATURE (AARCH64_FEATURE_V8, \
AARCH64_FEATURE_V8_A \
| AARCH64_FEATURE_FP \
+ | AARCH64_FEATURE_RAS \
| AARCH64_FEATURE_SIMD)
#define AARCH64_ARCH_V8_1 AARCH64_FEATURE (AARCH64_ARCH_V8, \
AARCH64_FEATURE_CRC \
@@ -106,8 +107,7 @@ typedef uint32_t aarch64_insn;
| AARCH64_FEATURE_LOR \
| AARCH64_FEATURE_RDMA)
#define AARCH64_ARCH_V8_2 AARCH64_FEATURE (AARCH64_ARCH_V8_1, \
- AARCH64_FEATURE_V8_2 \
- | AARCH64_FEATURE_RAS)
+ AARCH64_FEATURE_V8_2)
#define AARCH64_ARCH_V8_3 AARCH64_FEATURE (AARCH64_ARCH_V8_2, \
AARCH64_FEATURE_V8_3 \
| AARCH64_FEATURE_RCPC \