[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 22/22] RFC: target-arm: Use a 1:1 mapping bet
From: |
Peter Crosthwaite |
Subject: |
Re: [Qemu-devel] [PATCH v3 22/22] RFC: target-arm: Use a 1:1 mapping between EL and MMU index |
Date: |
Tue, 20 May 2014 19:07:58 +1000 |
On Mon, May 19, 2014 at 7:23 PM, Edgar E. Iglesias
<address@hidden> wrote:
> From: "Edgar E. Iglesias" <address@hidden>
>
> Signed-off-by: Edgar E. Iglesias <address@hidden>
> ---
> target-arm/cpu.h | 26 ++++----------------------
> target-arm/translate.h | 2 +-
> 2 files changed, 5 insertions(+), 23 deletions(-)
>
> diff --git a/target-arm/cpu.h b/target-arm/cpu.h
> index 566f9ed..3b7ef32 100644
> --- a/target-arm/cpu.h
> +++ b/target-arm/cpu.h
> @@ -1084,32 +1084,14 @@ static inline CPUARMState *cpu_init(const char
> *cpu_model)
> #define cpu_list arm_cpu_list
>
> /* MMU modes definitions */
> -#define MMU_MODE0_SUFFIX _kernel
> -#define MMU_MODE1_SUFFIX _user
> -#define MMU_USER_IDX 1
> -
> -static inline int arm_el_to_mmu_idx(int current_el)
> -{
> -#ifdef CONFIG_USER_ONLY
> - return MMU_USER_IDX;
> -#else
> - switch (current_el) {
> - case 0:
> - return MMU_USER_IDX;
> - case 1:
> - return 0;
> - default:
> - /* Unsupported EL. */
> - assert(0);
> - return 0;
> - }
> -#endif
> -}
> +#define MMU_MODE0_SUFFIX _user
> +#define MMU_MODE1_SUFFIX _kernel
> +#define MMU_USER_IDX 0
>
> static inline int cpu_mmu_index (CPUARMState *env)
> {
> int cur_el = arm_current_pl(env);
> - return arm_el_to_mmu_idx(cur_el);
> + return cur_el;
> }
>
> #include "exec/cpu-all.h"
> diff --git a/target-arm/translate.h b/target-arm/translate.h
> index db6f0af..31a0104 100644
> --- a/target-arm/translate.h
> +++ b/target-arm/translate.h
> @@ -54,7 +54,7 @@ static inline int arm_dc_feature(DisasContext *dc, int
> feature)
>
> static inline int get_mem_index(DisasContext *s)
> {
> - return arm_el_to_mmu_idx(s->current_pl);
> + return s->current_pl;
> }
>
> /* target-specific extra values for is_jmp */
> --
> 1.8.3.2
>
>
I'm a fan of this change. Should it squash into earlier in the series?
Regards,
Peter
- [Qemu-devel] [PATCH v3 19/22] target-arm: A64: Register VBAR_EL2, (continued)
Re: [Qemu-devel] [PATCH v3 00/22] target-arm: Preparations for A64 EL2 and 3, Peter Crosthwaite, 2014/05/20
Re: [Qemu-devel] [PATCH v3 00/22] target-arm: Preparations for A64 EL2 and 3, Peter Maydell, 2014/05/21