[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 00/22] target/arm: FEAT_AFP followups for FEAT_SME2
From: |
Richard Henderson |
Subject: |
[PATCH 00/22] target/arm: FEAT_AFP followups for FEAT_SME2 |
Date: |
Mon, 27 Jan 2025 15:25:42 -0800 |
Hi Peter,
After reviewing your AFP patch set, and starting to rebase SME2 work
on top of that (since I'd been skipping the FPCR.AH portion of SME2),
here are some cleanups which might be folded back into the original
change for FPCR.AH or left as separate follow-ups.
All of the FPST frobbing is because I add FPST_ZA (not included here)
which is like FPST_FPCR_A64, but with default-nans and whose cumulative
exception flags are ignored. Thus it does not overlap FPST_FPCR_AH
semantics.
I've not tested this extraction heavily (i.e. just make check).
Do you have further tests for AH=1?
r~
Based-on: 20250124162836.2332150-1-peter.maydell@linaro.org
("[PATCH 00/76] target/arm: Implement FEAT_AFP and FEAT_RPRES")
Richard Henderson (22):
target/arm: Rename FPST_FPCR_A32 to FPST_A32
target/arm: Rename FPST_FPCR_A64 to FPST_A64
target/arm: Rename FPST_FPCR_F16_A32 to FPST_A32_F16
target/arm: Rename FPST_FPCR_F16_A64 to FPST_A64_F16
target/arm: Rename FPST_FPCR_AH* to FPST_AH*
target/arm: Introduce CPUARMState.vfp.fp_status[]
target/arm: Remove standard_fp_status_f16
target/arm: Remove standard_fp_status
target/arm: Remove ah_fp_status_f16
target/arm: Remove ah_fp_status
target/arm: Remove fp_status_f16_a64
target/arm: Remove fp_status_f16_a32
target/arm: Remove fp_status_a64
target/arm: Remove fp_status_a32
target/arm: Simplify fp_status indexing in mve_helper.c
target/arm: Simplify DO_VFP_cmp in vfp_helper.c
target/arm: Move float*_ah_chs to vec_internal.h
target/arm: Introduce float*_maybe_ah_chs
target/arm: Use float*_maybe_ah_chs in sve_ftssel_*
target/arm: Use float*_maybe_ah_chs in sve_ftmad_*
target/arm: Use float*_maybe_ah_chs in sve_ftmad_*
target/arm: Use flags for AH negation in do_fmla_zpzzz_*
target/arm/cpu.h | 107 ++++++++++++-----------
target/arm/tcg/translate.h | 68 +--------------
target/arm/tcg/vec_internal.h | 35 ++++++++
target/arm/cpu.c | 28 +++---
target/arm/tcg/helper-a64.c | 15 +---
target/arm/tcg/mve_helper.c | 44 ++++------
target/arm/tcg/sme_helper.c | 4 +-
target/arm/tcg/sve_helper.c | 150 ++++++++++++++-------------------
target/arm/tcg/translate-a64.c | 100 +++++++++++-----------
target/arm/tcg/translate-sme.c | 4 +-
target/arm/tcg/translate-sve.c | 126 +++++++++++++--------------
target/arm/tcg/translate-vfp.c | 78 ++++++++---------
target/arm/tcg/vec_helper.c | 26 +++---
target/arm/vfp_helper.c | 94 ++++++++++-----------
14 files changed, 405 insertions(+), 474 deletions(-)
--
2.43.0
- [PATCH 00/22] target/arm: FEAT_AFP followups for FEAT_SME2,
Richard Henderson <=
- [PATCH 01/22] target/arm: Rename FPST_FPCR_A32 to FPST_A32, Richard Henderson, 2025/01/27
- [PATCH 03/22] target/arm: Rename FPST_FPCR_F16_A32 to FPST_A32_F16, Richard Henderson, 2025/01/27
- [PATCH 05/22] target/arm: Rename FPST_FPCR_AH* to FPST_AH*, Richard Henderson, 2025/01/27
- [PATCH 02/22] target/arm: Rename FPST_FPCR_A64 to FPST_A64, Richard Henderson, 2025/01/27
- [PATCH 07/22] target/arm: Remove standard_fp_status_f16, Richard Henderson, 2025/01/27
- [PATCH 16/22] target/arm: Simplify DO_VFP_cmp in vfp_helper.c, Richard Henderson, 2025/01/27
- [PATCH 18/22] target/arm: Introduce float*_maybe_ah_chs, Richard Henderson, 2025/01/27
- [PATCH 06/22] target/arm: Introduce CPUARMState.vfp.fp_status[], Richard Henderson, 2025/01/27
- [PATCH 04/22] target/arm: Rename FPST_FPCR_F16_A64 to FPST_A64_F16, Richard Henderson, 2025/01/27