accel/tcg: Propagate AccelState to dump_accel_info()
Declare tcg_dump_stats() in "tcg/tcg.h" so it can be used out of
accel/tcg/, like by {bsd,linux}-user.
Next commit will register the TCG AccelClass::get_stats handler,
which expects a AccelState, so propagate it to dump_accel_info().
Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20250715140048.84942-6-philmd@linaro.org>
This commit is contained in:
@@ -139,6 +139,4 @@ G_NORETURN void cpu_io_recompile(CPUState *cpu, uintptr_t retaddr);
|
||||
void tb_phys_invalidate(TranslationBlock *tb, tb_page_addr_t page_addr);
|
||||
void tb_set_jmp_target(TranslationBlock *tb, int n, uintptr_t addr);
|
||||
|
||||
void tcg_dump_stats(GString *buf);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "qapi/qapi-commands-machine.h"
|
||||
#include "monitor/monitor.h"
|
||||
#include "system/tcg.h"
|
||||
#include "tcg/tcg.h"
|
||||
#include "internal-common.h"
|
||||
|
||||
HumanReadableText *qmp_x_query_jit(Error **errp)
|
||||
|
||||
@@ -37,9 +37,8 @@ static void dump_drift_info(GString *buf)
|
||||
}
|
||||
}
|
||||
|
||||
static void dump_accel_info(GString *buf)
|
||||
static void dump_accel_info(AccelState *accel, GString *buf)
|
||||
{
|
||||
AccelState *accel = current_accel();
|
||||
bool one_insn_per_tb = object_property_get_bool(OBJECT(accel),
|
||||
"one-insn-per-tb",
|
||||
&error_fatal);
|
||||
@@ -209,7 +208,7 @@ static void dump_exec_info(GString *buf)
|
||||
|
||||
void tcg_dump_stats(GString *buf)
|
||||
{
|
||||
dump_accel_info(buf);
|
||||
dump_accel_info(current_accel(), buf);
|
||||
dump_exec_info(buf);
|
||||
dump_drift_info(buf);
|
||||
}
|
||||
|
||||
@@ -1005,5 +1005,7 @@ static inline const TCGOpcode *tcg_swap_vecop_list(const TCGOpcode *n)
|
||||
|
||||
bool tcg_can_emit_vecop_list(const TCGOpcode *, TCGType, unsigned);
|
||||
void tcg_dump_ops(TCGContext *s, FILE *f, bool have_prefs);
|
||||
/* tcg_dump_stats: Append TCG statistics to @buf */
|
||||
void tcg_dump_stats(GString *buf);
|
||||
|
||||
#endif /* TCG_H */
|
||||
|
||||
Reference in New Issue
Block a user