[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 00/72] tcg patch queue
From: |
Richard Henderson |
Subject: |
[PULL 00/72] tcg patch queue |
Date: |
Tue, 24 Dec 2024 12:04:09 -0800 |
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(-)
- [PULL 00/72] tcg patch queue,
Richard Henderson <=
- [PULL 01/72] tests/tcg: Do not use inttypes.h in multiarch/system/memory.c, Richard Henderson, 2024/12/24
- [PULL 04/72] tcg/optimize: Split out fold_affected_mask, Richard Henderson, 2024/12/24
- [PULL 07/72] tcg/optimize: Augment s_mask from z_mask in fold_masks_zs, Richard Henderson, 2024/12/24
- [PULL 09/72] tcg/optimize: Use finish_folding in fold_add, fold_add_vec, fold_addsub2, Richard Henderson, 2024/12/24
- [PULL 10/72] tcg/optimize: Introduce const value accessors for TempOptInfo, Richard Henderson, 2024/12/24
- [PULL 06/72] tcg/optimize: Split out fold_masks_zs, Richard Henderson, 2024/12/24
- [PULL 12/72] tcg/optimize: Use fold_masks_zs in fold_andc, Richard Henderson, 2024/12/24
- [PULL 14/72] tcg/optimize: Use fold_masks_zs in fold_count_zeros, Richard Henderson, 2024/12/24
- [PULL 16/72] tcg/optimize: Use fold_and and fold_masks_z in fold_deposit, Richard Henderson, 2024/12/24
- [PULL 19/72] tcg/optimize: Use finish_folding in fold_dup, fold_dup2, Richard Henderson, 2024/12/24