[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 16/21] target-arm: Allow raw_read() and raw_write() t
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PULL 16/21] target-arm: Allow raw_read() and raw_write() to handle 64 bit regs |
Date: |
Tue, 20 Aug 2013 15:07:55 +0100 |
Extend the raw_read() and raw_write() helper accessors so that
they can be used for 64 bit registers as well as 32 bit registers.
Signed-off-by: Peter Maydell <address@hidden>
Tested-by: Laurent Desnogues <address@hidden>
Reviewed-by: Edgar E. Iglesias <address@hidden>
Message-id: address@hidden
---
target-arm/helper.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index 6d9026d..f8689e2 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -67,14 +67,22 @@ static int vfp_gdb_set_reg(CPUARMState *env, uint8_t *buf,
int reg)
static int raw_read(CPUARMState *env, const ARMCPRegInfo *ri,
uint64_t *value)
{
- *value = CPREG_FIELD32(env, ri);
+ if (ri->type & ARM_CP_64BIT) {
+ *value = CPREG_FIELD64(env, ri);
+ } else {
+ *value = CPREG_FIELD32(env, ri);
+ }
return 0;
}
static int raw_write(CPUARMState *env, const ARMCPRegInfo *ri,
uint64_t value)
{
- CPREG_FIELD32(env, ri) = value;
+ if (ri->type & ARM_CP_64BIT) {
+ CPREG_FIELD64(env, ri) = value;
+ } else {
+ CPREG_FIELD32(env, ri) = value;
+ }
return 0;
}
--
1.7.9.5
- [Qemu-devel] [PULL 00/21] target-arm queue, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 08/21] hw/arm/musicpal: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 13/21] hw/arm/vexpress: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 11/21] hw/arm/strongarm: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 07/21] hw/arm/kzm: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 12/21] hw/arm/versatilepb: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 05/21] hw/arm/highbank: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 16/21] target-arm: Allow raw_read() and raw_write() to handle 64 bit regs,
Peter Maydell <=
- [Qemu-devel] [PULL 17/21] target-arm: Support coprocessor registers which do I/O, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 01/21] target-arm: Implement 'int' loglevel, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 21/21] hw/timer/imx_epit: Simplify and fix imx_epit implementation, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 20/21] default-configs: Fix A9MP and A15MP config names, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 14/21] hw/arm/xilinx_zynq: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 19/21] hw/cpu/a15mpcore: Wire generic timer outputs to GIC inputs, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 09/21] hw/arm/omap*: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 03/21] hw/arm/armv7m: Don't use arm_pic_init_cpu(), Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 18/21] target-arm: Implement the generic timer, Peter Maydell, 2013/08/20
- [Qemu-devel] [PULL 15/21] hw/arm/pic_cpu: Remove the now-unneeded arm_pic_init_cpu(), Peter Maydell, 2013/08/20