Splitting Matt's larger patch set:
> 1 accel/tcg: fold the dynamic cflags into CPUState::tcg_cflags
>
> curr_cflags() recomputed three unlikely tests on every one of the run's
> 8.4 billion dispatches, from state that changes only when gdb enables
> single-step, when one-insn-per-tb is toggled, or when the log mask
> moves. Fold each into tcg_cflags where it changes. -5.15%
Changes in v6:
- Use update_guest_debug in system mode, rather than a tcg-specific hack
in cpu_single_step. This would also be required for split-accel, if
and when that project gets regoing.
Unfortunately, cpus_get_accel() can't be used in user mode, so
fix things with an ifdef.
- Hide other cflags updates behind tcg_enabled(), so that even if
tcg is built in, we don't use it when using virtualization.
This also means we don't need stubs, because tcg_enabled() will
reduce to constant false with --disable-tcg.
r~
Matt Turner (1):
accel/tcg: fold the dynamic cflags into CPUState::tcg_cflags
Richard Henderson (1):
accel: Change AccelOpsClass.update_guest_debug to void
accel/tcg/internal-common.h | 11 +++++++++--
include/accel/accel-cpu-ops.h | 2 +-
include/system/hvf_int.h | 2 +-
include/system/tcg.h | 12 ++++++++++++
accel/hvf/hvf-accel-ops.c | 3 +--
accel/kvm/kvm-accel-ops.c | 4 ++--
accel/tcg/cpu-exec-common.c | 33 ++++++++++++++++++++++++++++++---
accel/tcg/cpu-exec.c | 3 +++
accel/tcg/tcg-accel-ops.c | 2 ++
cpu-target.c | 5 ++++-
monitor/hmp-cmds.c | 7 +++++++
system/runstate-hmp-cmds.c | 18 ++++++++++++------
12 files changed, 84 insertions(+), 18 deletions(-)
--
2.53.0