[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 4/7] target-arm: support AArch64 for arm_cpu_set_pc
From: |
Rob Herring |
Subject: |
[Qemu-devel] [PATCH 4/7] target-arm: support AArch64 for arm_cpu_set_pc |
Date: |
Mon, 5 May 2014 11:00:20 -0500 |
From: Rob Herring <address@hidden>
Add AArch64 support to arm_cpu_set_pc and make it available to other files.
Signed-off-by: Rob Herring <address@hidden>
---
target-arm/cpu.c | 7 -------
target-arm/cpu.h | 12 ++++++++++++
2 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/target-arm/cpu.c b/target-arm/cpu.c
index 03c025b..2d18a20 100644
--- a/target-arm/cpu.c
+++ b/target-arm/cpu.c
@@ -30,13 +30,6 @@
#include "sysemu/sysemu.h"
#include "sysemu/kvm.h"
-static void arm_cpu_set_pc(CPUState *cs, vaddr value)
-{
- ARMCPU *cpu = ARM_CPU(cs);
-
- cpu->env.regs[15] = value;
-}
-
static bool arm_cpu_has_work(CPUState *cs)
{
ARMCPU *cpu = ARM_CPU(cs);
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index 905ba02..efe3cd2 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -1197,6 +1197,18 @@ static inline void cpu_pc_from_tb(CPUARMState *env,
TranslationBlock *tb)
}
}
+static inline void arm_cpu_set_pc(CPUState *cs, vaddr value)
+{
+ ARMCPU *cpu = ARM_CPU(cs);
+
+ if (is_a64(&cpu->env)) {
+ cpu->env.pc = value;
+ } else {
+ cpu->env.regs[15] = value;
+ }
+
+}
+
/* Load an instruction and return it in the standard little-endian order */
static inline uint32_t arm_ldl_code(CPUARMState *env, target_ulong addr,
bool do_swap)
--
1.9.1
- Re: [Qemu-devel] [PATCH 5/7] target-arm: add emulation of PSCI calls for system emulation, (continued)
[Qemu-devel] [PATCH 4/7] target-arm: support AArch64 for arm_cpu_set_pc,
Rob Herring <=