qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] target-arm: Move bank_number() into internals.h


From: Sergey Fedorov
Subject: Re: [Qemu-devel] [PATCH] target-arm: Move bank_number() into internals.h
Date: Fri, 12 Feb 2016 20:24:49 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1

On 12.02.2016 18:50, Peter Maydell wrote:
> 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>

> ---
> Embarrassingly light on testing on that last change.
>
>  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);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]