I noticed a considerable (~20%) slowdown in the cpu performance of qemu-system-ppc.
Bisecting led me to this commit:
d03f140804b345a85973976506492027f703d82d is the first bad commit
Author: Richard Henderson <address@hidden
Date: Mon Dec 9 13:49:58 2019 -0800
cputlb: Move body of cpu_ldst_template.h out of line
With the tracing hooks, the inline functions are no longer
so simple. Once out-of-line, the current tlb_entry lookup
is redundant with the one in the main load/store_helper.
This also begins the introduction of a new target facing
interface, with suffix *_mmuidx_ra. This is not yet
official because the interface is not done for user-only.
Use abi_ptr instead of target_ulong in preparation for
user-only; the two types are identical for softmmu.
What remains in cpu_ldst_template.h are the expansions
for _code, _data, and MMU_MODE<N>_SUFFIX.
Tested-by: Philippe Mathieu-Daudé <address@hidden
Signed-off-by: Richard Henderson <address@hidden
accel/tcg/cputlb.c | 116 ++++++++++++++++++++++++++++++++++++
include/exec/cpu_ldst.h | 25 +++++++-
include/exec/cpu_ldst_template.h | 125 ++++++++-------------------------------
3 files changed, 166 insertions(+), 100 deletions(-)
Thanks for looking into this issue,