[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 02/22] target/arm: Use correct ID register check for aa32_fp1
From: |
Richard Henderson |
Subject: |
Re: [PATCH 02/22] target/arm: Use correct ID register check for aa32_fp16_arith |
Date: |
Tue, 25 Aug 2020 11:06:40 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 |
On 8/24/20 7:29 AM, Peter Maydell wrote:
> The aa32_fp16_arith feature check function currently looks at the
> AArch64 ID_AA64PFR0 register. This is (as the comment notes) not
> correct. The bogus check was put in mostly to allow testing of the
> fp16 variants of the VCMLA instructions and it was something of
> a mistake that we allowed them to exist in master.
>
> Switch the feature check function to testing VMFR1.FPHP, which is
> what it ought to be.
>
> This will remove emulation of the VCMLA and VCADD insns from
> AArch32 code running on an AArch64 '-cpu max' using system emulation.
> (They were never enabled for aarch32 linux-user and system-emulation.)
> Since we weren't advertising their existence via the AArch32 ID
> register, well-behaved guests wouldn't have been using them anyway.
>
> Once we have implemented all the AArch32 support for the FP16 extension
> we will advertise it in the MVFR1 ID register field, which will reenable
> these insns along with all the others.
>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> I don't expect that any guests will have been using these insns,
> but in any case the fp16 work will be all done before the next
> QEMU release and the insns re-enabled...
> ---
> target/arm/cpu.h | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
Cc qemu-stable, for the bug fix?
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
- [PATCH 00/22] target/arm: Implement fp16 for AArch32 VFP, Peter Maydell, 2020/08/24
- [PATCH 01/22] target/arm: Remove local definitions of float constants, Peter Maydell, 2020/08/24
- [PATCH 02/22] target/arm: Use correct ID register check for aa32_fp16_arith, Peter Maydell, 2020/08/24
- Re: [PATCH 02/22] target/arm: Use correct ID register check for aa32_fp16_arith,
Richard Henderson <=
- [PATCH 03/22] target/arm: Implement VFP fp16 for VFP_BINOP operations, Peter Maydell, 2020/08/24
- [PATCH 05/22] target/arm: Macroify trans functions for VFMA, VFMS, VFNMA, VFNMS, Peter Maydell, 2020/08/24
- [PATCH 04/22] target/arm: Implement VFP fp16 VMLA, VMLS, VNMLS, VNMLA, VNMUL, Peter Maydell, 2020/08/24
- [PATCH 06/22] target/arm: Implement VFP fp16 for fused-multiply-add, Peter Maydell, 2020/08/24