From 2e49fd1edf34d7a1db5944ee57071571a0556811 Mon Sep 17 00:00:00 2001 From: Alex Coplan Date: Wed, 12 Aug 2020 13:49:54 +0100 Subject: aarch64: Add support for MPAM system registers This patch adds support for the system registers introduced in the Armv8-A MPAM extension. See https://developer.arm.com/documentation/ddi0598/latest for the Arm ARM supplement documenting this extension. gas/ChangeLog: * testsuite/gas/aarch64/mpam-bad.d: New test. * testsuite/gas/aarch64/mpam-bad.l: Error output. * testsuite/gas/aarch64/mpam-bad.s: Input. * testsuite/gas/aarch64/mpam.d: New test. * testsuite/gas/aarch64/mpam.s: Input. opcodes/ChangeLog: * aarch64-opc.c (aarch64_sys_regs): Add MPAM registers. --- opcodes/ChangeLog | 4 ++++ opcodes/aarch64-opc.c | 17 +++++++++++++++++ 2 files changed, 21 insertions(+) (limited to 'opcodes') diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 9ae6143..9c3bc6b 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2020-08-12 Alex Coplan + + * aarch64-opc.c (aarch64_sys_regs): Add MPAM registers. + 2020-08-12 Nick Clifton * po/sr.po: Updated Serbian translation. diff --git a/opcodes/aarch64-opc.c b/opcodes/aarch64-opc.c index d2b325f..5534dc7 100644 --- a/opcodes/aarch64-opc.c +++ b/opcodes/aarch64-opc.c @@ -4241,6 +4241,23 @@ const aarch64_sys_reg aarch64_sys_regs [] = SR_V8_4 ("sder32_el2", CPENC (3,4,C1,C3,1), 0), SR_V8_4 ("vncr_el2", CPENC (3,4,C2,C2,0), 0), + SR_CORE ("mpam0_el1", CPENC (3,0,C10,C5,1), 0), + SR_CORE ("mpam1_el1", CPENC (3,0,C10,C5,0), 0), + SR_CORE ("mpam1_el12", CPENC (3,5,C10,C5,0), 0), + SR_CORE ("mpam2_el2", CPENC (3,4,C10,C5,0), 0), + SR_CORE ("mpam3_el3", CPENC (3,6,C10,C5,0), 0), + SR_CORE ("mpamhcr_el2", CPENC (3,4,C10,C4,0), 0), + SR_CORE ("mpamidr_el1", CPENC (3,0,C10,C4,4), F_REG_READ), + SR_CORE ("mpamvpm0_el2", CPENC (3,4,C10,C6,0), 0), + SR_CORE ("mpamvpm1_el2", CPENC (3,4,C10,C6,1), 0), + SR_CORE ("mpamvpm2_el2", CPENC (3,4,C10,C6,2), 0), + SR_CORE ("mpamvpm3_el2", CPENC (3,4,C10,C6,3), 0), + SR_CORE ("mpamvpm4_el2", CPENC (3,4,C10,C6,4), 0), + SR_CORE ("mpamvpm5_el2", CPENC (3,4,C10,C6,5), 0), + SR_CORE ("mpamvpm6_el2", CPENC (3,4,C10,C6,6), 0), + SR_CORE ("mpamvpm7_el2", CPENC (3,4,C10,C6,7), 0), + SR_CORE ("mpamvpmv_el2", CPENC (3,4,C10,C4,1), 0), + { 0, CPENC (0,0,0,0,0), 0, 0 } }; -- cgit v1.1