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
|
#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)
|
void switch_mode(CPUARMState *env, int mode)
|
||||||
{
|
{
|
||||||
int old_mode;
|
int old_mode;
|
||||||
|
@ -109,7 +109,31 @@ static inline unsigned int aarch64_banked_spsr_index(unsigned int el)
|
|||||||
return map[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 switch_mode(CPUARMState *, int);
|
||||||
void arm_cpu_register_gdb_regs_for_features(ARMCPU *cpu);
|
void arm_cpu_register_gdb_regs_for_features(ARMCPU *cpu);
|
||||||
void arm_translate_init(void);
|
void arm_translate_init(void);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user