From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org
Subject: [Qemu-devel] [PULL 00/51] tcg queued patches
Date: Wed, 25 Oct 2017 11:34:44 +0200 [thread overview]
Message-ID: <20171025093535.10175-1-richard.henderson@linaro.org> (raw)
Primarily Emilio's work toward removing tb_lock, with fixes.
But there are some other tcg-related patches that are queued.
r~
The following changes since commit 3d7196d43bfe12efe98568cb60057e273652b99b:
Merge remote-tracking branch 'remotes/kraxel/tags/usb-20171023-pull-request' into staging (2017-10-24 16:05:57 +0100)
are available in the git repository at:
git://github.com/rth7680/qemu.git tags/pull-tcg-20171025
for you to fetch changes up to cc689485ee3e9dca05765326ee8fd619a6ec48f0:
translate-all: exit from tb_phys_invalidate if qht_remove fails (2017-10-24 13:53:42 -0700)
----------------------------------------------------------------
TCG patch queue
----------------------------------------------------------------
Emilio G. Cota (25):
tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK
tcg: convert tb->cflags reads to tb_cflags(tb)
target/arm: check CF_PARALLEL instead of parallel_cpus
target/hppa: check CF_PARALLEL instead of parallel_cpus
target/i386: check CF_PARALLEL instead of parallel_cpus
target/m68k: check CF_PARALLEL instead of parallel_cpus
target/s390x: check CF_PARALLEL instead of parallel_cpus
target/sh4: check CF_PARALLEL instead of parallel_cpus
target/sparc: check CF_PARALLEL instead of parallel_cpus
tcg: check CF_PARALLEL instead of parallel_cpus
cpu-exec: lookup/generate TB outside exclusive region during step_atomic
translate-all: use a binary search tree to track TBs in TBContext
exec-all: rename tb_free to tb_remove
translate-all: report correct avg host TB size
tcg: take tb_ctx out of TCGContext
tcg: define tcg_init_ctx and make tcg_ctx a pointer
gen-icount: fold exitreq_label into TCGContext
tcg: introduce **tcg_ctxs to keep track of all TCGContext's
tcg: distribute profiling counters across TCGContext's
tcg: allocate optimizer temps with tcg_malloc
osdep: introduce qemu_mprotect_rwx/none
translate-all: use qemu_protect_rwx/none helpers
tcg: introduce regions to split code_gen_buffer
tcg: enable multiple TCG contexts in softmmu
translate-all: exit from tb_phys_invalidate if qht_remove fails
Richard Henderson (26):
tcg: Merge opcode arguments into TCGOp
tcg: Propagate args to op->args in optimizer
tcg: Propagate args to op->args in tcg.c
tcg: Propagate TCGOp down to allocators
tcg: Introduce arg_temp
tcg: Add temp_global bit to TCGTemp
tcg: Return NULL temp for TCG_CALL_DUMMY_ARG
tcg: Introduce temp_arg, export temp_idx
tcg: Use per-temp state data in liveness
tcg: Avoid loops against variable bounds
tcg: Change temp_allocate_frame arg to TCGTemp
tcg: Remove unused TCG_CALL_DUMMY_TCGV
tcg: Use per-temp state data in optimize
tcg: Push tcg_ctx into generator functions
tcg: Push tcg_ctx into tcg_gen_callN
tcg: Introduce tcgv_{i32,i64,ptr}_{arg,temp}
tcg: Introduce temp_tcgv_{i32,i64,ptr}
tcg: Remove GET_TCGV_* and MAKE_TCGV_*
tcg: Remove TCGV_EQUAL*
qom: Introduce CPUClass.tcg_initialize
tcg: Use offsets not indices for TCGv_*
tcg: Add CPUState cflags_next_tb
tcg: Include CF_COUNT_MASK in CF_HASH_MASK
tcg: Add CF_LAST_IO + CF_USE_ICOUNT to CF_HASH_MASK
tcg: Remove CF_IGNORE_ICOUNT
tcg: Initialize cpu_env generically
include/exec/exec-all.h | 42 +-
include/exec/gen-icount.h | 27 +-
include/exec/helper-gen.h | 22 +-
include/exec/helper-head.h | 16 +-
include/exec/tb-context.h | 6 +-
include/exec/tb-hash-xx.h | 9 +-
include/exec/tb-hash.h | 4 +-
include/exec/tb-lookup.h | 6 +-
include/qemu/osdep.h | 2 +
include/qom/cpu.h | 9 +-
target/arm/helper-a64.h | 4 +
target/arm/translate.h | 1 -
target/hppa/helper.h | 2 +
target/m68k/helper.h | 1 +
target/s390x/helper.h | 4 +
target/sparc/cpu.h | 2 +-
tcg/tcg-op.h | 140 +++---
tcg/tcg.h | 294 ++++++-----
accel/tcg/cpu-exec.c | 100 ++--
accel/tcg/tcg-runtime.c | 4 +-
accel/tcg/translate-all.c | 533 +++++++++-----------
accel/tcg/translator.c | 4 +-
bsd-user/main.c | 3 +-
cpus.c | 14 +
exec.c | 14 +-
linux-user/main.c | 9 +-
linux-user/syscall.c | 1 +
qom/cpu.c | 1 +
target/alpha/cpu.c | 3 +-
target/alpha/translate.c | 14 +-
target/arm/cpu.c | 6 +-
target/arm/helper-a64.c | 38 +-
target/arm/op_helper.c | 7 -
target/arm/translate-a64.c | 38 +-
target/arm/translate.c | 19 +-
target/cris/cpu.c | 16 +-
target/cris/translate.c | 15 +-
target/cris/translate_v10.c | 2 -
target/hppa/cpu.c | 3 +-
target/hppa/op_helper.c | 32 +-
target/hppa/translate.c | 24 +-
target/i386/cpu.c | 5 +-
target/i386/translate.c | 67 ++-
target/lm32/cpu.c | 7 +-
target/lm32/translate.c | 18 +-
target/m68k/cpu.c | 7 +-
target/m68k/op_helper.c | 33 +-
target/m68k/translate.c | 25 +-
target/microblaze/cpu.c | 7 +-
target/microblaze/translate.c | 10 +-
target/mips/cpu.c | 5 +-
target/mips/translate.c | 37 +-
target/moxie/cpu.c | 7 +-
target/moxie/translate.c | 11 +-
target/nios2/cpu.c | 7 +-
target/nios2/translate.c | 10 +-
target/openrisc/cpu.c | 7 +-
target/openrisc/translate.c | 9 +-
target/ppc/translate.c | 20 +-
target/ppc/translate_init.c | 37 +-
target/s390x/cpu.c | 7 +-
target/s390x/mem_helper.c | 80 ++-
target/s390x/translate.c | 40 +-
target/sh4/cpu.c | 5 +-
target/sh4/translate.c | 19 +-
target/sparc/cpu.c | 5 +-
target/sparc/translate.c | 36 +-
target/tilegx/cpu.c | 7 +-
target/tilegx/translate.c | 5 +-
target/tricore/cpu.c | 5 +-
target/tricore/translate.c | 11 +-
target/unicore32/cpu.c | 7 +-
target/unicore32/translate.c | 10 +-
target/xtensa/cpu.c | 7 +-
target/xtensa/translate.c | 31 +-
tcg/optimize.c | 654 +++++++++++++-----------
tcg/tcg-op.c | 190 +++----
tcg/tcg.c | 1116 +++++++++++++++++++++++++++--------------
tests/qht-bench.c | 2 +-
util/osdep.c | 41 ++
80 files changed, 2285 insertions(+), 1813 deletions(-)
next reply other threads:[~2017-10-25 9:35 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-25 9:34 Richard Henderson [this message]
2017-10-25 9:34 ` [Qemu-devel] [PULL 01/51] tcg: Merge opcode arguments into TCGOp Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 02/51] tcg: Propagate args to op->args in optimizer Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 03/51] tcg: Propagate args to op->args in tcg.c Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 04/51] tcg: Propagate TCGOp down to allocators Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 05/51] tcg: Introduce arg_temp Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 06/51] tcg: Add temp_global bit to TCGTemp Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 07/51] tcg: Return NULL temp for TCG_CALL_DUMMY_ARG Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 08/51] tcg: Introduce temp_arg, export temp_idx Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 09/51] tcg: Use per-temp state data in liveness Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 10/51] tcg: Avoid loops against variable bounds Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 11/51] tcg: Change temp_allocate_frame arg to TCGTemp Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 12/51] tcg: Remove unused TCG_CALL_DUMMY_TCGV Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 13/51] tcg: Use per-temp state data in optimize Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 14/51] tcg: Push tcg_ctx into generator functions Richard Henderson
2017-10-25 9:34 ` [Qemu-devel] [PULL 15/51] tcg: Push tcg_ctx into tcg_gen_callN Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 16/51] tcg: Introduce tcgv_{i32, i64, ptr}_{arg, temp} Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 17/51] tcg: Introduce temp_tcgv_{i32,i64,ptr} Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 18/51] tcg: Remove GET_TCGV_* and MAKE_TCGV_* Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 19/51] tcg: Remove TCGV_EQUAL* Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 20/51] qom: Introduce CPUClass.tcg_initialize Richard Henderson
2017-10-26 12:45 ` Eduardo Habkost
2017-10-25 9:35 ` [Qemu-devel] [PULL 21/51] tcg: Use offsets not indices for TCGv_* Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 22/51] tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 23/51] tcg: Add CPUState cflags_next_tb Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 24/51] tcg: Include CF_COUNT_MASK in CF_HASH_MASK Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 25/51] tcg: convert tb->cflags reads to tb_cflags(tb) Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 26/51] target/arm: check CF_PARALLEL instead of parallel_cpus Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 27/51] target/hppa: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 28/51] target/i386: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 29/51] target/m68k: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 30/51] target/s390x: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 31/51] target/sh4: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 32/51] target/sparc: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 33/51] tcg: " Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 34/51] cpu-exec: lookup/generate TB outside exclusive region during step_atomic Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 35/51] tcg: Add CF_LAST_IO + CF_USE_ICOUNT to CF_HASH_MASK Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 36/51] tcg: Remove CF_IGNORE_ICOUNT Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 37/51] translate-all: use a binary search tree to track TBs in TBContext Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 38/51] exec-all: rename tb_free to tb_remove Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 39/51] translate-all: report correct avg host TB size Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 40/51] tcg: take tb_ctx out of TCGContext Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 41/51] tcg: define tcg_init_ctx and make tcg_ctx a pointer Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 42/51] gen-icount: fold exitreq_label into TCGContext Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 43/51] tcg: introduce **tcg_ctxs to keep track of all TCGContext's Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 44/51] tcg: distribute profiling counters across TCGContext's Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 45/51] tcg: allocate optimizer temps with tcg_malloc Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 46/51] osdep: introduce qemu_mprotect_rwx/none Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 47/51] translate-all: use qemu_protect_rwx/none helpers Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 48/51] tcg: introduce regions to split code_gen_buffer Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 49/51] tcg: enable multiple TCG contexts in softmmu Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 50/51] tcg: Initialize cpu_env generically Richard Henderson
2017-10-25 9:35 ` [Qemu-devel] [PULL 51/51] translate-all: exit from tb_phys_invalidate if qht_remove fails Richard Henderson
2017-10-25 10:33 ` [Qemu-devel] [PULL 00/51] tcg queued patches no-reply
2017-10-25 19:03 ` Peter Maydell
2017-11-01 17:34 ` Thomas Huth
2017-11-01 20:36 ` Emilio G. Cota
2017-11-02 13:38 ` Peter Maydell
2017-11-02 19:53 ` Emilio G. Cota
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171025093535.10175-1-richard.henderson@linaro.org \
--to=richard.henderson@linaro.org \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).