[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PATCH v2 11/23] target/arm: Declare v7m_cpacr_pass() pub
From: |
Alex Bennée |
Subject: |
Re: [Qemu-arm] [PATCH v2 11/23] target/arm: Declare v7m_cpacr_pass() publicly |
Date: |
Mon, 17 Jun 2019 15:09:11 +0100 |
User-agent: |
mu4e 1.3.2; emacs 26.1 |
Philippe Mathieu-Daudé <address@hidden> writes:
> In the next commit we will move exception handling routines to
> v7m_helper, so this function will be called from 2 different
> files. Declare it inlined in the "internals.h" header.
>
> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
> ---
> target/arm/helper.c | 19 -------------------
> target/arm/internals.h | 21 +++++++++++++++++++++
> 2 files changed, 21 insertions(+), 19 deletions(-)
>
> diff --git a/target/arm/helper.c b/target/arm/helper.c
> index cf76010ea1..5d05db84d3 100644
> --- a/target/arm/helper.c
> +++ b/target/arm/helper.c
> @@ -7611,25 +7611,6 @@ uint32_t arm_phys_excp_target_el(CPUState *cs,
> uint32_t excp_idx,
> return target_el;
> }
>
> -/*
> - * Return true if the v7M CPACR permits access to the FPU for the specified
> - * security state and privilege level.
> - */
> -static bool v7m_cpacr_pass(CPUARMState *env, bool is_secure, bool is_priv)
> -{
> - switch (extract32(env->v7m.cpacr[is_secure], 20, 2)) {
> - case 0:
> - case 2: /* UNPREDICTABLE: we treat like 0 */
> - return false;
> - case 1:
> - return is_priv;
> - case 3:
> - return true;
> - default:
> - g_assert_not_reached();
> - }
> -}
> -
> /*
> * What kind of stack write are we doing? This affects how exceptions
> * generated during the stacking are treated.
> diff --git a/target/arm/internals.h b/target/arm/internals.h
> index 04711b317a..1d15af3f8b 100644
> --- a/target/arm/internals.h
> +++ b/target/arm/internals.h
> @@ -891,6 +891,27 @@ static inline uint32_t v7m_sp_limit(CPUARMState *env)
> }
> }
>
> +/**
> + * v7m_cpacr_pass:
> + * Return true if the v7M CPACR permits access to the FPU for the specified
> + * security state and privilege level.
> + */
> +static inline bool v7m_cpacr_pass(CPUARMState *env,
> + bool is_secure, bool is_priv)
> +{
> + switch (extract32(env->v7m.cpacr[is_secure], 20, 2)) {
> + case 0:
> + case 2: /* UNPREDICTABLE: we treat like 0 */
> + return false;
> + case 1:
> + return is_priv;
> + case 3:
> + return true;
> + default:
> + g_assert_not_reached();
> + }
> +}
> +
> /**
> * aarch32_mode_name(): Return name of the AArch32 CPU mode
> * @psr: Program Status Register indicating CPU mode
--
Alex Bennée
- Re: [Qemu-arm] [PATCH v2 04/23] target/arm: Makefile cleanup (softmmu), (continued)
- [Qemu-arm] [PATCH v2 07/23] target/arm: Declare some function publicly, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 09/23] target/arm: Move code around, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 06/23] target/arm: Fix multiline comment syntax, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 10/23] target/arm: Move the v7-M Security State helpers to v7m_helper, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 11/23] target/arm: Declare v7m_cpacr_pass() publicly, Philippe Mathieu-Daudé, 2019/06/15
- Re: [Qemu-arm] [PATCH v2 11/23] target/arm: Declare v7m_cpacr_pass() publicly,
Alex Bennée <=
- [Qemu-arm] [PATCH v2 14/23] target/arm: Move the DC ZVA helper into op_helper, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 08/23] target/arm: Move all v7m insn helpers into their own file, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 13/23] target/arm: Make the v7-M Security State routines, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 15/23] target/arm: Make ARM TLB filling routine static, Philippe Mathieu-Daudé, 2019/06/15
- [Qemu-arm] [PATCH v2 16/23] target/arm: Make arm_deliver_fault() static, Philippe Mathieu-Daudé, 2019/06/15