[PULL 00/30] fpu patch queue

Richard Henderson posted 30 patches 1 week ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260522182658.184604-1-richard.henderson@linaro.org
Maintainers: Aurelien Jarno <aurelien@aurel32.net>, Peter Maydell <peter.maydell@linaro.org>, "Alex Bennée" <alex.bennee@linaro.org>, Richard Henderson <richard.henderson@linaro.org>, Brian Cain <brian.cain@oss.qualcomm.com>, Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>, Helge Deller <deller@gmx.de>, Paolo Bonzini <pbonzini@redhat.com>, Zhao Liu <zhao1.liu@intel.com>, Laurent Vivier <laurent@vivier.eu>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Aleksandar Rikalo <arikalo@gmail.com>, Nicholas Piggin <npiggin@gmail.com>, Chinmay Rath <rathc@linux.ibm.com>, Glenn Miles <milesg@linux.ibm.com>, Harsh Prateek Bora <harshpb@linux.ibm.com>, Palmer Dabbelt <palmer@dabbelt.com>, Alistair Francis <alistair.francis@wdc.com>, Weiwei Li <liwei1518@gmail.com>, Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>, Liu Zhiwei <zhiwei_liu@linux.alibaba.com>, Chao Liu <chao.liu.zevorn@gmail.com>, Ilya Leoshkevich <iii@linux.ibm.com>, David Hildenbrand <david@kernel.org>, Cornelia Huck <cohuck@redhat.com>, Eric Farman <farman@linux.ibm.com>, Matthew Rosato <mjrosato@linux.ibm.com>, Yoshinori Sato <yoshinori.sato@nifty.com>, Max Filippov <jcmvbkbc@gmail.com>
There is a newer version of this series
include/fpu/softfloat-helpers.h |  37 ++--
include/fpu/softfloat-parts.h   |  12 ++
include/fpu/softfloat-types.h   |  89 ++++++---
include/fpu/softfloat.h         | 112 ++++++-----
target/i386/ops_sse.h           |  24 +--
target/mips/fpu_helper.h        |   3 +-
fpu/softfloat.c                 | 422 +++++++++++++---------------------------
target/alpha/fpu_helper.c       |   8 +-
target/alpha/helper.c           |   3 +-
target/alpha/translate.c        |  18 +-
target/arm/tcg/helper-a64.c     |  12 +-
target/arm/tcg/vfp_helper.c     |  38 ++--
target/hexagon/fma_emu.c        |   6 +-
target/hppa/fpu_helper.c        |   2 +-
target/i386/tcg/fpu_helper.c    |  65 ++++---
target/m68k/softfloat.c         | 380 ++++++++++++++++++------------------
target/mips/msa.c               |   4 +-
target/ppc/cpu.c                |   4 +-
target/ppc/fpu_helper.c         |  14 +-
target/riscv/vector_helper.c    |   6 +-
target/s390x/tcg/fpu_helper.c   | 139 ++++++++++++-
target/sh4/cpu.c                |   2 +-
target/xtensa/cpu.c             |   3 +-
tests/fp/fp-bench.c             |   6 +-
tests/fp/fp-test.c              |   6 +-
fpu/softfloat-parts.c.inc       | 312 +++++++++++++++--------------
fpu/softfloat-specialize.c.inc  | 117 ++++++-----
tests/fp/wrap.c.inc             |  12 +-
28 files changed, 936 insertions(+), 920 deletions(-)
[PULL 00/30] fpu patch queue
Posted by Richard Henderson 1 week ago
The following changes since commit f5a2438405d4ae8b62de7c9b39fac0b2155ee544:

  Merge tag 'pull-qapi-2026-05-21' of https://repo.or.cz/qemu/armbru into staging (2026-05-21 09:00:22 -0400)

are available in the Git repository at:

  https://gitlab.com/rth7680/qemu.git tags/pull-fpu-20260522

for you to fetch changes up to 512f5147c8722c2caf730d1b5a09dbf36b03da57:

  fpu: Export floatN_minmax (2026-05-22 11:21:37 -0700)

----------------------------------------------------------------
fpu: Export partsN_{scalbn,muladd}
fpu: Export floatN_minmax
fpu: Simplifications to muladd, addsub
fpu: Introduce exp_scalbn
fpu: Introduce FloatExceptionFlags
fpu: Use float_status accessors everywhere
fpu: Compress float_status with bitfields
fpu: Fixes for E4M3 vs NaNs
target/alpha: Remove CONFIG_SOFTFLOAT_INLINE
target/alpha: Use FloatExceptionFlags
target/s390x: Move float{32,64}_s390_divide_to_integer

----------------------------------------------------------------
Richard Henderson (30):
      fpu: Return struct from parts{64,128}_scalbn
      fpu: Reorganize partsN(muladd)
      fpu: Return struct from parts{64,128}_muladd
      fpu: Hoist nan check in partsN_addsub
      fpu: Simplify 0 +/- N case in parts_addsub
      fpu: Use parts64_round_to_int in parts_s390_divide_to_integer
      target/s390x: Move float{32,64}_s390_divide_to_integer
      fpu: Introduce exp_scalbn
      target/alpha: Remove CONFIG_SOFTFLOAT_INLINE
      fpu: Introduce FloatExceptionFlags
      target/alpha: Use FloatExceptionFlags
      fpu: Introduce frac_msb_is_snan
      fpu: Introduce FloatSNaNRule
      fpu: Use {get,set}_float_rounding_mode everywhere
      fpu: Use of {get,set}_floatx80_rounding_precision everywhere
      fpu: Use get_floatx80_behaviour everywhere
      fpu: Use get_float_2nan_prop_rule in partsN_pick_nan
      fpu: Use get_float_3nan_prop_rule in partsN_pick_nan_muladd
      fpu: Use get_float_infzeronan_rule in partsN_pick_nan_muladd
      fpu: Use accessors for tininess_before_rounding
      fpu: Use {get,set}_flush_to_zero everywhere
      fpu: Use accessors for ftz_before_rounding
      fpu: Use {get,set}_flush_inputs_to_zero everywhere
      fpu: Use get_default_nan_mode everywhere
      fpu: Use get_float_default_nan_pattern in partsN_default_nan
      fpu: Add accessors for rebias_{underflow,overflow}
      fpu: Reorg float_status
      fpu: Introduce float_status.e4m3_nan_is_snan
      fpu: Fix NaN encoding for E4M3 in parts64_uncanon
      fpu: Export floatN_minmax

 include/fpu/softfloat-helpers.h |  37 ++--
 include/fpu/softfloat-parts.h   |  12 ++
 include/fpu/softfloat-types.h   |  89 ++++++---
 include/fpu/softfloat.h         | 112 ++++++-----
 target/i386/ops_sse.h           |  24 +--
 target/mips/fpu_helper.h        |   3 +-
 fpu/softfloat.c                 | 422 +++++++++++++---------------------------
 target/alpha/fpu_helper.c       |   8 +-
 target/alpha/helper.c           |   3 +-
 target/alpha/translate.c        |  18 +-
 target/arm/tcg/helper-a64.c     |  12 +-
 target/arm/tcg/vfp_helper.c     |  38 ++--
 target/hexagon/fma_emu.c        |   6 +-
 target/hppa/fpu_helper.c        |   2 +-
 target/i386/tcg/fpu_helper.c    |  65 ++++---
 target/m68k/softfloat.c         | 380 ++++++++++++++++++------------------
 target/mips/msa.c               |   4 +-
 target/ppc/cpu.c                |   4 +-
 target/ppc/fpu_helper.c         |  14 +-
 target/riscv/vector_helper.c    |   6 +-
 target/s390x/tcg/fpu_helper.c   | 139 ++++++++++++-
 target/sh4/cpu.c                |   2 +-
 target/xtensa/cpu.c             |   3 +-
 tests/fp/fp-bench.c             |   6 +-
 tests/fp/fp-test.c              |   6 +-
 fpu/softfloat-parts.c.inc       | 312 +++++++++++++++--------------
 fpu/softfloat-specialize.c.inc  | 117 ++++++-----
 tests/fp/wrap.c.inc             |  12 +-
 28 files changed, 936 insertions(+), 920 deletions(-)
Re: [PULL 00/30] fpu patch queue
Posted by Stefan Hajnoczi 5 days, 21 hours ago
Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/11.1 for any user-visible changes.