[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 09/36] target-arm: Move bank_number() into internals.
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PULL 09/36] target-arm: Move bank_number() into internals.h |
Date: |
Thu, 18 Feb 2016 14:34:41 +0000 |
Move bank_number()'s implementation into internals.h, so
it's available in the user-mode-only compile as well.
Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Sergey Fedorov <address@hidden>
---
target-arm/helper.c | 25 -------------------------
target-arm/internals.h | 26 +++++++++++++++++++++++++-
2 files changed, 25 insertions(+), 26 deletions(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index c46e3d0..a420a2a 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -5378,31 +5378,6 @@ void aarch64_sync_64_to_32(CPUARMState *env)
#else
-/* Map CPU modes onto saved register banks. */
-int bank_number(int mode)
-{
- switch (mode) {
- case ARM_CPU_MODE_USR:
- case ARM_CPU_MODE_SYS:
- return BANK_USRSYS;
- case ARM_CPU_MODE_SVC:
- return BANK_SVC;
- case ARM_CPU_MODE_ABT:
- return BANK_ABT;
- case ARM_CPU_MODE_UND:
- return BANK_UND;
- case ARM_CPU_MODE_IRQ:
- return BANK_IRQ;
- case ARM_CPU_MODE_FIQ:
- return BANK_FIQ;
- case ARM_CPU_MODE_HYP:
- return BANK_HYP;
- case ARM_CPU_MODE_MON:
- return BANK_MON;
- }
- g_assert_not_reached();
-}
-
void switch_mode(CPUARMState *env, int mode)
{
int old_mode;
diff --git a/target-arm/internals.h b/target-arm/internals.h
index 70bec4a..2e70272 100644
--- a/target-arm/internals.h
+++ b/target-arm/internals.h
@@ -109,7 +109,31 @@ static inline unsigned int
aarch64_banked_spsr_index(unsigned int el)
return map[el];
}
-int bank_number(int mode);
+/* Map CPU modes onto saved register banks. */
+static inline int bank_number(int mode)
+{
+ switch (mode) {
+ case ARM_CPU_MODE_USR:
+ case ARM_CPU_MODE_SYS:
+ return BANK_USRSYS;
+ case ARM_CPU_MODE_SVC:
+ return BANK_SVC;
+ case ARM_CPU_MODE_ABT:
+ return BANK_ABT;
+ case ARM_CPU_MODE_UND:
+ return BANK_UND;
+ case ARM_CPU_MODE_IRQ:
+ return BANK_IRQ;
+ case ARM_CPU_MODE_FIQ:
+ return BANK_FIQ;
+ case ARM_CPU_MODE_HYP:
+ return BANK_HYP;
+ case ARM_CPU_MODE_MON:
+ return BANK_MON;
+ }
+ g_assert_not_reached();
+}
+
void switch_mode(CPUARMState *, int);
void arm_cpu_register_gdb_regs_for_features(ARMCPU *cpu);
void arm_translate_init(void);
--
1.9.1
- [Qemu-devel] [PULL 03/36] target-arm: Implement MDCR_EL3.TDOSA and MDCR_EL2.TDOSA traps, (continued)
- [Qemu-devel] [PULL 03/36] target-arm: Implement MDCR_EL3.TDOSA and MDCR_EL2.TDOSA traps, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 34/36] hw/timer: QOM'ify exynos4210_rtc, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 25/36] hw/sd/pxa2xx_mmci: Convert to VMStateDescription, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 06/36] target-arm: Report correct syndrome for FPEXC32_EL2 traps, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 22/36] sdhci_sysbus: Create SD card device in users, not the device itself, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 21/36] hw/sd/sdhci.c: Update to use SDBus APIs, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 20/36] hw/sd: Add QOM bus which SD cards plug in to, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 30/36] hw/timer: QOM'ify arm_timer (pass 1), Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 19/36] hw/sd/sd.c: Convert sd_reset() function into Device reset method, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 07/36] target-arm: Clean up trap/undef handling of SRS, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 09/36] target-arm: Move bank_number() into internals.h,
Peter Maydell <=
- [Qemu-devel] [PULL 17/36] hw/sd/sdhci.c: Remove x-drive property, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 02/36] target-arm: Fix handling of SCR.SMD, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 08/36] target-arm: Move get/set_r13_banked() to op_helper.c, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 14/36] target-arm: Add PMUSERENR_EL0 register, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 05/36] target-arm: Implement MDCR_EL3.TDA and MDCR_EL2.TDA traps, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 24/36] hw/sd/pxa2xx_mmci: Update to use new SDBus APIs, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 28/36] hw/sd: model a power-up delay, as a workaround for an EDK2 bug, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 16/36] ARM: PL061: Cleaning field of PL061 device state, Peter Maydell, 2016/02/18
- [Qemu-devel] [PULL 23/36] hw/sd/pxa2xx_mmci: convert to SysBusDevice object, Peter Maydell, 2016/02/18
- Re: [Qemu-devel] [PULL 00/36] target-arm queue, Peter Maydell, 2016/02/18