[Qemu-devel] [PULL 00/23] tcg constant pools and USE_DIRECT_JUMP cleanup

Richard Henderson posted 23 patches 6 years, 7 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170907224051.21518-1-richard.henderson@linaro.org
Test checkpatch failed
Test docker passed
Test s390x passed
include/elf.h                         |   3 +-
include/exec/exec-all.h               |  95 +----
tcg/aarch64/tcg-target.h              |  10 +-
tcg/arm/tcg-target.h                  |  11 +-
tcg/i386/tcg-target.h                 |  14 +
tcg/mips/tcg-target.h                 |   9 +-
tcg/ppc/tcg-target.h                  |   7 +
tcg/s390/tcg-target.h                 |  15 +
tcg/sparc/tcg-target.h                |   5 +
tcg/tcg-be-null.h                     |  44 --
tcg/tcg.h                             |  14 +-
tcg/tci/tcg-target.h                  |  13 +
accel/tcg/cpu-exec.c                  |  35 ++
accel/tcg/translate-all.c             |  36 +-
tcg/aarch64/tcg-target.inc.c          |  78 ++--
tcg/arm/tcg-target.inc.c              | 780 +++++++++++++++++++---------------
tcg/i386/tcg-target.inc.c             |  20 +-
tcg/mips/tcg-target.inc.c             |   7 +-
tcg/ppc/tcg-target.inc.c              | 345 ++++++++-------
tcg/s390/tcg-target.inc.c             | 527 +++++++++++++----------
tcg/sparc/tcg-target.inc.c            | 240 ++++++++---
tcg/{tcg-be-ldst.h => tcg-ldst.inc.c} |  27 +-
tcg/tcg-pool.inc.c                    |  85 ++++
tcg/tcg.c                             |  26 +-
tcg/tci/tcg-target.inc.c              |   2 -
25 files changed, 1444 insertions(+), 1004 deletions(-)
delete mode 100644 tcg/tcg-be-null.h
rename tcg/{tcg-be-ldst.h => tcg-ldst.inc.c} (85%)
create mode 100644 tcg/tcg-pool.inc.c
[Qemu-devel] [PULL 00/23] tcg constant pools and USE_DIRECT_JUMP cleanup
Posted by Richard Henderson 6 years, 7 months ago
Lots of cleanup for aarch32 and s390x.  Minor improvements for
aarch64, ppc, sparc, x86_64.  But we'll need this more when we
start generating host vector insns.


r~


The following changes since commit cda4a338c4243fa3bff4498b935340ac7121cc76:

  tcg/tci: Add TCG_TARGET_DEFAULT_MO (2017-09-07 18:57:34 +0100)

are available in the git repository at:

  git://github.com/rth7680/qemu.git tags/pull-tcg-20170907

for you to fetch changes up to 53c89efd02cef626040165cc8f06b5cf2c15355d:

  tcg/ppc: Use constant pool for movi (2017-09-07 11:57:35 -0700)

----------------------------------------------------------------
TCG constant pools

----------------------------------------------------------------
Richard Henderson (23):
      tcg: Move USE_DIRECT_JUMP discriminator to tcg/cpu/tcg-target.h
      tcg: Rearrange ldst label tracking
      tcg: Infrastructure for managing constant pools
      tcg/i386: Store out-of-range call targets in constant pool
      tcg/s390: Introduce TCG_REG_TB
      tcg/s390: Fix sign of patch_reloc addend
      tcg/s390: Use constant pool for movi
      tcg/s390: Use constant pool for andi
      tcg/s390: Use constant pool for ori
      tcg/s390: Use constant pool for xori
      tcg/s390: Use constant pool for cmpi
      tcg/aarch64: Use constant pool for movi
      tcg/sparc: Introduce TCG_REG_TB
      tcg/sparc: Use constant pool for movi
      tcg/arm: Improve tlb load for armv7
      tcg/arm: Tighten tlb indexing offset test
      tcg/arm: Code rearrangement
      tcg/arm: Extract INSN_NOP
      tcg/arm: Use constant pool for movi
      tcg/arm: Use constant pool for call
      tcg/ppc: Change TCG_REG_RA to TCG_REG_TB
      tcg/ppc: Look for shifted constants
      tcg/ppc: Use constant pool for movi

 include/elf.h                         |   3 +-
 include/exec/exec-all.h               |  95 +----
 tcg/aarch64/tcg-target.h              |  10 +-
 tcg/arm/tcg-target.h                  |  11 +-
 tcg/i386/tcg-target.h                 |  14 +
 tcg/mips/tcg-target.h                 |   9 +-
 tcg/ppc/tcg-target.h                  |   7 +
 tcg/s390/tcg-target.h                 |  15 +
 tcg/sparc/tcg-target.h                |   5 +
 tcg/tcg-be-null.h                     |  44 --
 tcg/tcg.h                             |  14 +-
 tcg/tci/tcg-target.h                  |  13 +
 accel/tcg/cpu-exec.c                  |  35 ++
 accel/tcg/translate-all.c             |  36 +-
 tcg/aarch64/tcg-target.inc.c          |  78 ++--
 tcg/arm/tcg-target.inc.c              | 780 +++++++++++++++++++---------------
 tcg/i386/tcg-target.inc.c             |  20 +-
 tcg/mips/tcg-target.inc.c             |   7 +-
 tcg/ppc/tcg-target.inc.c              | 345 ++++++++-------
 tcg/s390/tcg-target.inc.c             | 527 +++++++++++++----------
 tcg/sparc/tcg-target.inc.c            | 240 ++++++++---
 tcg/{tcg-be-ldst.h => tcg-ldst.inc.c} |  27 +-
 tcg/tcg-pool.inc.c                    |  85 ++++
 tcg/tcg.c                             |  26 +-
 tcg/tci/tcg-target.inc.c              |   2 -
 25 files changed, 1444 insertions(+), 1004 deletions(-)
 delete mode 100644 tcg/tcg-be-null.h
 rename tcg/{tcg-be-ldst.h => tcg-ldst.inc.c} (85%)
 create mode 100644 tcg/tcg-pool.inc.c

Re: [Qemu-devel] [PULL 00/23] tcg constant pools and USE_DIRECT_JUMP cleanup
Posted by Peter Maydell 6 years, 7 months ago
On 7 September 2017 at 23:40, Richard Henderson
<richard.henderson@linaro.org> wrote:
> Lots of cleanup for aarch32 and s390x.  Minor improvements for
> aarch64, ppc, sparc, x86_64.  But we'll need this more when we
> start generating host vector insns.
>
>
> r~
>
>
> The following changes since commit cda4a338c4243fa3bff4498b935340ac7121cc76:
>
>   tcg/tci: Add TCG_TARGET_DEFAULT_MO (2017-09-07 18:57:34 +0100)
>
> are available in the git repository at:
>
>   git://github.com/rth7680/qemu.git tags/pull-tcg-20170907
>
> for you to fetch changes up to 53c89efd02cef626040165cc8f06b5cf2c15355d:
>
>   tcg/ppc: Use constant pool for movi (2017-09-07 11:57:35 -0700)
>
> ----------------------------------------------------------------
> TCG constant pools
>

Applied, thanks.

-- PMM