mirror of https://gitee.com/openkylin/qemu.git
target-arm: Move bank_number() into internals.h
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 <peter.maydell@linaro.org> Reviewed-by: Sergey Fedorov <serge.fdrv@gmail.com>
This commit is contained in:
parent
72309cee48
commit
c766568d36
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue