[PATCH 00/43] tcg patch queue

Richard Henderson posted 43 patches 3 years, 6 months ago
Test docker-quick@centos7 failed
Test docker-mingw@fedora failed
Test checkpatch failed
Test FreeBSD failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20200909001647.532249-1-richard.henderson@linaro.org
Maintainers: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>, Andrzej Zaborowski <balrogg@gmail.com>, Richard Henderson <richard.henderson@linaro.org>, Richard Henderson <rth@twiddle.net>, Stefan Weil <sw@weilnetz.de>, Cornelia Huck <cohuck@redhat.com>, Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>, Palmer Dabbelt <palmer@dabbelt.com>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Aurelien Jarno <aurelien@aurel32.net>, Huacai Chen <chenhc@lemote.com>, Alistair Francis <Alistair.Francis@wdc.com>, Thomas Huth <thuth@redhat.com>
There is a newer version of this series
include/exec/gen-icount.h       |  25 +-
include/tcg/tcg-gvec-desc.h     |  38 ++-
include/tcg/tcg-op.h            |  17 +-
include/tcg/tcg-opc.h           |  11 +-
include/tcg/tcg.h               |  72 +++--
tcg/aarch64/tcg-target-constr.h |  31 ++
tcg/aarch64/tcg-target.h        |   1 -
tcg/arm/tcg-target-constr.h     |  30 ++
tcg/i386/tcg-target-constr.h    |  55 ++++
tcg/i386/tcg-target.h           |   1 -
tcg/mips/tcg-target-constr.h    |  31 ++
tcg/ppc/tcg-target-constr.h     |  37 +++
tcg/ppc/tcg-target.h            |   1 -
tcg/riscv/tcg-target-constr.h   |  25 ++
tcg/s390/tcg-target-constr.h    |  24 ++
tcg/sparc/tcg-target-constr.h   |  27 ++
tcg/tci/tcg-target-constr.h     |  28 ++
accel/tcg/plugin-gen.c          |  49 ++-
tcg/optimize.c                  | 254 ++++++++-------
tcg/tcg-op-gvec.c               | 160 +++++-----
tcg/tcg-op-vec.c                |  48 +--
tcg/tcg-op.c                    | 227 +++++++------
tcg/tcg.c                       | 549 +++++++++++++++++++++++---------
tcg/tci.c                       |   4 +-
tcg/aarch64/tcg-target.c.inc    | 134 +++-----
tcg/arm/tcg-target.c.inc        | 123 +++----
tcg/i386/tcg-target.c.inc       | 336 +++++++++----------
tcg/mips/tcg-target.c.inc       | 118 +++----
tcg/ppc/tcg-target.c.inc        | 254 +++++++--------
tcg/riscv/tcg-target.c.inc      | 100 ++----
tcg/s390/tcg-target.c.inc       | 143 ++++-----
tcg/sparc/tcg-target.c.inc      |  97 ++----
tcg/tcg-constr.c.inc            | 108 +++++++
tcg/tci/tcg-target.c.inc        | 369 ++++++++-------------
34 files changed, 1893 insertions(+), 1634 deletions(-)
create mode 100644 tcg/aarch64/tcg-target-constr.h
create mode 100644 tcg/arm/tcg-target-constr.h
create mode 100644 tcg/i386/tcg-target-constr.h
create mode 100644 tcg/mips/tcg-target-constr.h
create mode 100644 tcg/ppc/tcg-target-constr.h
create mode 100644 tcg/riscv/tcg-target-constr.h
create mode 100644 tcg/s390/tcg-target-constr.h
create mode 100644 tcg/sparc/tcg-target-constr.h
create mode 100644 tcg/tci/tcg-target-constr.h
create mode 100644 tcg/tcg-constr.c.inc
[PATCH 00/43] tcg patch queue
Posted by Richard Henderson 3 years, 6 months ago
This patch collection contains:

  * A couple of fixes for i386 host vector support.

  * Some random cleanups cherry-picked from some inactive branches.

  * A reposting (with fix) of my "better handling of constants" set:

    https://lists.nongnu.org/archive/html/qemu-devel/2020-05/msg02152.html

  * A couple patches that centralizes the set of host constraints.
    This, I believe is slightly cleaner than the current state of
    afairs, even before the ultimtate goal of pre-validating the
    contents as well.


r~


Richard Henderson (43):
  tcg: Adjust simd_desc size encoding
  tcg: Drop union from TCGArgConstraint
  tcg: Move sorted_args into TCGArgConstraint.sort_index
  tcg: Remove TCG_CT_REG
  tcg: Move some TCG_CT_* bits to TCGArgConstraint bitfields
  tcg: Remove TCGOpDef.used
  tcg/i386: Fix dupi for avx2 32-bit hosts
  tcg: Fix generation of dupi_vec for 32-bit host
  tcg/optimize: Fold dup2_vec
  tcg: Remove TCG_TARGET_HAS_cmp_vec
  tcg: Use tcg_out_dupi_vec from temp_load
  tcg: Increase tcg_out_dupi_vec immediate to int64_t
  tcg: Consolidate 3 bits into enum TCGTempKind
  tcg: Add temp_readonly
  tcg: Expand TCGTemp.val to 64-bits
  tcg: Rename struct tcg_temp_info to TempOptInfo
  tcg: Expand TempOptInfo to 64-bits
  tcg: Introduce TYPE_CONST temporaries
  tcg/optimize: Improve find_better_copy
  tcg/optimize: Adjust TempOptInfo allocation
  tcg/optimize: Use tcg_constant_internal with constant folding
  tcg: Convert tcg_gen_dupi_vec to TCG_CONST
  tcg: Use tcg_constant_i32 with icount expander
  tcg: Use tcg_constant_{i32,i64} with tcg int expanders
  tcg: Use tcg_constant_{i32,i64} with tcg plugins
  tcg: Use tcg_constant_{i32,i64,vec} with gvec expanders
  tcg/tci: Add special tci_movi_{i32,i64} opcodes
  tcg: Remove movi and dupi opcodes
  tcg: Add tcg_reg_alloc_dup2
  tcg/i386: Use tcg_constant_vec with tcg vec expanders
  tcg: Remove tcg_gen_dup{8,16,32,64}i_vec
  tcg/ppc: Use tcg_constant_vec with tcg vec expanders
  tcg/aarch64: Use tcg_constant_vec with tcg vec expanders
  tcg: Add tcg-constr.c.inc
  tcg/i386: Convert to tcg-constr.c.inc
  tcg/aarch64: Convert to tcg-constr.c.inc
  tcg/arm: Convert to tcg-constr.c.inc
  tcg/mips: Convert to tcg-constr.c.inc
  tcg/ppc: Convert to tcg-constr.c.inc
  tcg/riscv: Convert to tcg-constr.c.inc
  tcg/s390: Convert to tcg-constr.c.inc
  tcg/sparc: Convert to tcg-constr.c.inc
  tcg/tci: Convert to tcg-constr.c.inc

 include/exec/gen-icount.h       |  25 +-
 include/tcg/tcg-gvec-desc.h     |  38 ++-
 include/tcg/tcg-op.h            |  17 +-
 include/tcg/tcg-opc.h           |  11 +-
 include/tcg/tcg.h               |  72 +++--
 tcg/aarch64/tcg-target-constr.h |  31 ++
 tcg/aarch64/tcg-target.h        |   1 -
 tcg/arm/tcg-target-constr.h     |  30 ++
 tcg/i386/tcg-target-constr.h    |  55 ++++
 tcg/i386/tcg-target.h           |   1 -
 tcg/mips/tcg-target-constr.h    |  31 ++
 tcg/ppc/tcg-target-constr.h     |  37 +++
 tcg/ppc/tcg-target.h            |   1 -
 tcg/riscv/tcg-target-constr.h   |  25 ++
 tcg/s390/tcg-target-constr.h    |  24 ++
 tcg/sparc/tcg-target-constr.h   |  27 ++
 tcg/tci/tcg-target-constr.h     |  28 ++
 accel/tcg/plugin-gen.c          |  49 ++-
 tcg/optimize.c                  | 254 ++++++++-------
 tcg/tcg-op-gvec.c               | 160 +++++-----
 tcg/tcg-op-vec.c                |  48 +--
 tcg/tcg-op.c                    | 227 +++++++------
 tcg/tcg.c                       | 549 +++++++++++++++++++++++---------
 tcg/tci.c                       |   4 +-
 tcg/aarch64/tcg-target.c.inc    | 134 +++-----
 tcg/arm/tcg-target.c.inc        | 123 +++----
 tcg/i386/tcg-target.c.inc       | 336 +++++++++----------
 tcg/mips/tcg-target.c.inc       | 118 +++----
 tcg/ppc/tcg-target.c.inc        | 254 +++++++--------
 tcg/riscv/tcg-target.c.inc      | 100 ++----
 tcg/s390/tcg-target.c.inc       | 143 ++++-----
 tcg/sparc/tcg-target.c.inc      |  97 ++----
 tcg/tcg-constr.c.inc            | 108 +++++++
 tcg/tci/tcg-target.c.inc        | 369 ++++++++-------------
 34 files changed, 1893 insertions(+), 1634 deletions(-)
 create mode 100644 tcg/aarch64/tcg-target-constr.h
 create mode 100644 tcg/arm/tcg-target-constr.h
 create mode 100644 tcg/i386/tcg-target-constr.h
 create mode 100644 tcg/mips/tcg-target-constr.h
 create mode 100644 tcg/ppc/tcg-target-constr.h
 create mode 100644 tcg/riscv/tcg-target-constr.h
 create mode 100644 tcg/s390/tcg-target-constr.h
 create mode 100644 tcg/sparc/tcg-target-constr.h
 create mode 100644 tcg/tci/tcg-target-constr.h
 create mode 100644 tcg/tcg-constr.c.inc

-- 
2.25.1