mbox

[PULL,00/72] tcg patch queue

Message ID 20241224200521.310066-1-richard.henderson@linaro.org
State New
Headers show

Pull-request

https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20241224

Message

Richard Henderson Dec. 24, 2024, 8:04 p.m. UTC
The following changes since commit aa3a285b5bc56a4208b3b57d4a55291e9c260107:

  Merge tag 'mem-2024-12-21' of https://github.com/davidhildenbrand/qemu into staging (2024-12-22 14:33:27 -0500)

are available in the Git repository at:

  https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20241224

for you to fetch changes up to e4a8e093dc74be049f4829831dce76e5edab0003:

  accel/tcg: Move gen_intermediate_code to TCGCPUOps.translate_core (2024-12-24 08:32:15 -0800)

----------------------------------------------------------------
tcg/optimize: Remove in-flight mask data from OptContext
fpu: Add float*_muladd_scalbn
fpu: Remove float_muladd_halve_result
fpu: Add float_round_nearest_even_max
fpu: Add float_muladd_suppress_add_product_zero
target/hexagon: Use float32_muladd
accel/tcg: Move gen_intermediate_code to TCGCPUOps.translate_core

----------------------------------------------------------------
Ilya Leoshkevich (1):
      tests/tcg: Do not use inttypes.h in multiarch/system/memory.c

Pierrick Bouvier (1):
      plugins: optimize cpu_index code generation

Richard Henderson (70):
      tcg/optimize: Split out finish_bb, finish_ebb
      tcg/optimize: Split out fold_affected_mask
      tcg/optimize: Copy mask writeback to fold_masks
      tcg/optimize: Split out fold_masks_zs
      tcg/optimize: Augment s_mask from z_mask in fold_masks_zs
      tcg/optimize: Change representation of s_mask
      tcg/optimize: Use finish_folding in fold_add, fold_add_vec, fold_addsub2
      tcg/optimize: Introduce const value accessors for TempOptInfo
      tcg/optimize: Use fold_masks_zs in fold_and
      tcg/optimize: Use fold_masks_zs in fold_andc
      tcg/optimize: Use fold_masks_zs in fold_bswap
      tcg/optimize: Use fold_masks_zs in fold_count_zeros
      tcg/optimize: Use fold_masks_z in fold_ctpop
      tcg/optimize: Use fold_and and fold_masks_z in fold_deposit
      tcg/optimize: Compute sign mask in fold_deposit
      tcg/optimize: Use finish_folding in fold_divide
      tcg/optimize: Use finish_folding in fold_dup, fold_dup2
      tcg/optimize: Use fold_masks_s in fold_eqv
      tcg/optimize: Use fold_masks_z in fold_extract
      tcg/optimize: Use finish_folding in fold_extract2
      tcg/optimize: Use fold_masks_zs in fold_exts
      tcg/optimize: Use fold_masks_z in fold_extu
      tcg/optimize: Use fold_masks_zs in fold_movcond
      tcg/optimize: Use finish_folding in fold_mul*
      tcg/optimize: Use fold_masks_s in fold_nand
      tcg/optimize: Use fold_masks_z in fold_neg_no_const
      tcg/optimize: Use fold_masks_s in fold_nor
      tcg/optimize: Use fold_masks_s in fold_not
      tcg/optimize: Use fold_masks_zs in fold_or
      tcg/optimize: Use fold_masks_zs in fold_orc
      tcg/optimize: Use fold_masks_zs in fold_qemu_ld
      tcg/optimize: Return true from fold_qemu_st, fold_tcg_st
      tcg/optimize: Use finish_folding in fold_remainder
      tcg/optimize: Distinguish simplification in fold_setcond_zmask
      tcg/optimize: Use fold_masks_z in fold_setcond
      tcg/optimize: Use fold_masks_s in fold_negsetcond
      tcg/optimize: Use fold_masks_z in fold_setcond2
      tcg/optimize: Use finish_folding in fold_cmp_vec
      tcg/optimize: Use finish_folding in fold_cmpsel_vec
      tcg/optimize: Use fold_masks_zs in fold_sextract
      tcg/optimize: Use fold_masks_zs, fold_masks_s in fold_shift
      tcg/optimize: Simplify sign bit test in fold_shift
      tcg/optimize: Use finish_folding in fold_sub, fold_sub_vec
      tcg/optimize: Use fold_masks_zs in fold_tcg_ld
      tcg/optimize: Use finish_folding in fold_tcg_ld_memcopy
      tcg/optimize: Use fold_masks_zs in fold_xor
      tcg/optimize: Use finish_folding in fold_bitsel_vec
      tcg/optimize: Use finish_folding as default in tcg_optimize
      tcg/optimize: Remove z_mask, s_mask from OptContext
      tcg/optimize: Re-enable sign-mask optimizations
      tcg/optimize: Move fold_bitsel_vec into alphabetic sort
      tcg/optimize: Move fold_cmp_vec, fold_cmpsel_vec into alphabetic sort
      softfloat: Add float{16,32,64}_muladd_scalbn
      target/arm: Use float*_muladd_scalbn
      target/sparc: Use float*_muladd_scalbn
      softfloat: Remove float_muladd_halve_result
      softfloat: Add float_round_nearest_even_max
      softfloat: Add float_muladd_suppress_add_product_zero
      target/hexagon: Use float32_mul in helper_sfmpy
      target/hexagon: Use float32_muladd for helper_sffma
      target/hexagon: Use float32_muladd for helper_sffms
      target/hexagon: Use float32_muladd_scalbn for helper_sffma_sc
      target/hexagon: Use float32_muladd for helper_sffm[as]_lib
      target/hexagon: Remove internal_fmafx
      target/hexagon: Expand GEN_XF_ROUND
      target/hexagon: Remove Float
      target/hexagon: Remove Double
      target/hexagon: Use mulu64 for int128_mul_6464
      target/hexagon: Simplify internal_mpyhh setup
      accel/tcg: Move gen_intermediate_code to TCGCPUOps.translate_core

 include/exec/translator.h           |  14 -
 include/fpu/softfloat-types.h       |   2 +
 include/fpu/softfloat.h             |  14 +-
 include/hw/core/tcg-cpu-ops.h       |  13 +
 target/alpha/cpu.h                  |   2 +
 target/arm/internals.h              |   2 +
 target/avr/cpu.h                    |   2 +
 target/hexagon/cpu.h                |   2 +
 target/hexagon/fma_emu.h            |   3 -
 target/hppa/cpu.h                   |   2 +
 target/i386/tcg/helper-tcg.h        |   2 +
 target/loongarch/internals.h        |   2 +
 target/m68k/cpu.h                   |   2 +
 target/microblaze/cpu.h             |   2 +
 target/mips/tcg/tcg-internal.h      |   2 +
 target/openrisc/cpu.h               |   2 +
 target/ppc/cpu.h                    |   2 +
 target/riscv/cpu.h                  |   3 +
 target/rx/cpu.h                     |   2 +
 target/s390x/s390x-internal.h       |   2 +
 target/sh4/cpu.h                    |   2 +
 target/sparc/cpu.h                  |   2 +
 target/sparc/helper.h               |   4 +-
 target/tricore/cpu.h                |   2 +
 target/xtensa/cpu.h                 |   2 +
 accel/tcg/cpu-exec.c                |   8 +-
 accel/tcg/plugin-gen.c              |   9 +
 accel/tcg/translate-all.c           |   8 +-
 fpu/softfloat.c                     |  63 +--
 target/alpha/cpu.c                  |   1 +
 target/alpha/translate.c            |   4 +-
 target/arm/cpu.c                    |   1 +
 target/arm/tcg/cpu-v7m.c            |   1 +
 target/arm/tcg/helper-a64.c         |   6 +-
 target/arm/tcg/translate.c          |   5 +-
 target/avr/cpu.c                    |   1 +
 target/avr/translate.c              |   6 +-
 target/hexagon/cpu.c                |   1 +
 target/hexagon/fma_emu.c            | 496 ++++++---------------
 target/hexagon/op_helper.c          | 125 ++----
 target/hexagon/translate.c          |   4 +-
 target/hppa/cpu.c                   |   1 +
 target/hppa/translate.c             |   4 +-
 target/i386/tcg/tcg-cpu.c           |   1 +
 target/i386/tcg/translate.c         |   5 +-
 target/loongarch/cpu.c              |   1 +
 target/loongarch/tcg/translate.c    |   4 +-
 target/m68k/cpu.c                   |   1 +
 target/m68k/translate.c             |   4 +-
 target/microblaze/cpu.c             |   1 +
 target/microblaze/translate.c       |   4 +-
 target/mips/cpu.c                   |   1 +
 target/mips/tcg/translate.c         |   4 +-
 target/openrisc/cpu.c               |   1 +
 target/openrisc/translate.c         |   4 +-
 target/ppc/cpu_init.c               |   1 +
 target/ppc/translate.c              |   4 +-
 target/riscv/tcg/tcg-cpu.c          |   1 +
 target/riscv/translate.c            |   4 +-
 target/rx/cpu.c                     |   1 +
 target/rx/translate.c               |   4 +-
 target/s390x/cpu.c                  |   1 +
 target/s390x/tcg/translate.c        |   4 +-
 target/sh4/cpu.c                    |   1 +
 target/sh4/translate.c              |   4 +-
 target/sparc/cpu.c                  |   1 +
 target/sparc/fop_helper.c           |   8 +-
 target/sparc/translate.c            |  84 ++--
 target/tricore/cpu.c                |   1 +
 target/tricore/translate.c          |   5 +-
 target/xtensa/cpu.c                 |   1 +
 target/xtensa/translate.c           |   4 +-
 tcg/optimize.c                      | 857 +++++++++++++++++++-----------------
 tests/tcg/multiarch/system/memory.c |   9 +-
 fpu/softfloat-parts.c.inc           |  16 +-
 75 files changed, 866 insertions(+), 1009 deletions(-)

Comments

Stefan Hajnoczi Dec. 25, 2024, 3 p.m. UTC | #1
Applied, thanks.

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