[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH 05/26] target/arm: Honour M-profile F
From: |
Richard Henderson |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH 05/26] target/arm: Honour M-profile FP enable bits |
Date: |
Tue, 23 Apr 2019 11:19:23 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 |
On 4/16/19 5:57 AM, Peter Maydell wrote:
> Like AArch64, M-profile floating point has no FPEXC enable
> bit to gate floating point; so always set the VFPEN TB flag.
>
> M-profile also has CPACR and NSACR similar to A-profile;
> they behave slightly differently:
> * the CPACR is banked between Secure and Non-Secure
> * if the NSACR forces a trap then this is taken to
> the Secure state, not the Non-Secure state
>
> Honour the CPACR and NSACR settings. The NSACR handling
> requires us to borrow the exception.target_el field
> (usually meaningless for M profile) to distinguish the
> NOCP UsageFault taken to Secure state from the more
> usual fault taken to the current security state.
>
> Signed-off-by: Peter Maydell <address@hidden>
> ---
> target/arm/helper.c | 55 +++++++++++++++++++++++++++++++++++++++---
> target/arm/translate.c | 10 ++++++--
> 2 files changed, 60 insertions(+), 5 deletions(-)
Reviewed-by: Richard Henderson <address@hidden>
r~
- Re: [Qemu-arm] [Qemu-devel] [PATCH 04/26] target/arm: Disable most VFP sysregs for M-profile, (continued)
- [Qemu-arm] [PATCH 06/26] target/arm: Decode FP instructions for M profile, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 07/26] target/arm: Clear CONTROL_S.SFPA in SG insn if FPU present, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 08/26] target/arm: Handle SFPA and FPCA bits in reads and writes of CONTROL, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 09/26] target/arm/helper: don't return early for STKOF faults during stacking, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 05/26] target/arm: Honour M-profile FP enable bits, Peter Maydell, 2019/04/16
- Re: [Qemu-arm] [Qemu-devel] [PATCH 05/26] target/arm: Honour M-profile FP enable bits,
Richard Henderson <=
- [Qemu-arm] [PATCH 10/26] target/arm: Handle floating point registers in exception entry, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 11/26] target/arm: Implement v7m_update_fpccr(), Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 13/26] target/arm: Clean excReturn bits when tail chaining, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 12/26] target/arm: Clear CONTROL.SFPA in BXNS and BLXNS, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 14/26] target/arm: Allow for floating point in callee stack integrity check, Peter Maydell, 2019/04/16
- [Qemu-arm] [PATCH 15/26] target/arm: Handle floating point registers in exception return, Peter Maydell, 2019/04/16