diff options
author | Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> | 2021-04-19 15:00:07 +0100 |
---|---|---|
committer | Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> | 2021-04-19 15:01:56 +0100 |
commit | 02202574ec8d0d7e2a90c41342cc22cc2173da28 (patch) | |
tree | 98549abccadb95e3cbe61395c6335ae03b9dfe5b | |
parent | cd6608e49d884f01536b5948ed3a64241dbb4a1f (diff) | |
download | gdb-02202574ec8d0d7e2a90c41342cc22cc2173da28.zip gdb-02202574ec8d0d7e2a90c41342cc22cc2173da28.tar.gz gdb-02202574ec8d0d7e2a90c41342cc22cc2173da28.tar.bz2 |
aarch64: New instructions for maintenance of GPT entries cached in a TLB
This patch adds support to four new system registers (RPAOS, RPALOS, PAALLOS,
PAALL) in conjunction with TLBI instruction. This change is part of RME (Realm
Management Extension).
gas/ChangeLog:
2021-04-19 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
* NEWS: Update news.
* testsuite/gas/aarch64/rme.d: Update test.
* testsuite/gas/aarch64/rme.s: Update test.
opcodes/ChangeLog:
2021-04-19 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
* aarch64-opc.c: Add new registers (RPAOS, RPALOS, PAALLOS, PAALL) support for
TLBI instruction.
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/NEWS | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/rme.d | 4 | ||||
-rw-r--r-- | gas/testsuite/gas/aarch64/rme.s | 6 | ||||
-rw-r--r-- | opcodes/ChangeLog | 5 | ||||
-rw-r--r-- | opcodes/aarch64-opc.c | 5 |
6 files changed, 28 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index da2f91f..a1bfcde 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,11 @@ 2021-04-19 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> + * NEWS: Update news. + * testsuite/gas/aarch64/rme.d: Update test. + * testsuite/gas/aarch64/rme.s: Update test. + +2021-04-19 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> + * testsuite/gas/aarch64/rme.d: Update test. * testsuite/gas/aarch64/rme.s: Update test. @@ -2,6 +2,8 @@ * arm-symbianelf support removed. +* Add support for Realm Management Extension (RME) for AArch64. + Changes in 2.36: * Add support for Intel AVX VNNI instructions. diff --git a/gas/testsuite/gas/aarch64/rme.d b/gas/testsuite/gas/aarch64/rme.d index 89bedb8..a714b78 100644 --- a/gas/testsuite/gas/aarch64/rme.d +++ b/gas/testsuite/gas/aarch64/rme.d @@ -14,3 +14,7 @@ Disassembly of section \.text: 10: d51e2180 msr gptbr_el3, x0 14: d50e7e20 dc cipapa, x0 18: d50e7ea0 dc cigdpapa, x0 + 1c: d50e8460 tlbi rpaos, x0 + 20: d50e84e0 tlbi rpalos, x0 + 24: d50e819f tlbi paallos + 28: d50e879f tlbi paall diff --git a/gas/testsuite/gas/aarch64/rme.s b/gas/testsuite/gas/aarch64/rme.s index b9a915d..21d9bd2 100644 --- a/gas/testsuite/gas/aarch64/rme.s +++ b/gas/testsuite/gas/aarch64/rme.s @@ -12,3 +12,9 @@ msr gptbr_el3, x0 /* RME data cache maintenance operations. */ dc cipapa, x0 dc cigdpapa, x0 + +/* RME instructions for maintenance of GPT entries cached in a TLB. */ +tlbi rpaos, x0 +tlbi rpalos, x0 +tlbi paallos +tlbi paall diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 5bae9d0..4775048 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,5 +1,10 @@ 2021-04-19 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> + * aarch64-opc.c: Add new registers (RPAOS, RPALOS, PAALLOS, PAALL) support + for TLBI instruction. + +2021-04-19 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com> + * aarch64-opc.c: Add new register (CIPAPA, CIGDPAPA) support for DC instruction. diff --git a/opcodes/aarch64-opc.c b/opcodes/aarch64-opc.c index b315a82..dea4b8e 100644 --- a/opcodes/aarch64-opc.c +++ b/opcodes/aarch64-opc.c @@ -4870,6 +4870,11 @@ const aarch64_sys_ins_reg aarch64_sys_regs_tlbi[] = { "rvae3os", CPENS (6, C8, C5, 1), F_HASXT | F_ARCHEXT }, { "rvale3os", CPENS (6, C8, C5, 5), F_HASXT | F_ARCHEXT }, + { "rpaos", CPENS (6, C8, C4, 3), F_HASXT }, + { "rpalos", CPENS (6, C8, C4, 7), F_HASXT }, + { "paallos", CPENS (6, C8, C1, 4), 0}, + { "paall", CPENS (6, C8, C7, 4), 0}, + { 0, CPENS(0,0,0,0), 0 } }; |