accel/tcg: Remove 'info opcount' and @x-query-opcount

Since commit 1b65b4f54c ("accel/tcg: remove CONFIG_PROFILER",
released with QEMU v8.1.0) we get pointless output:

  (qemu) info opcount
  [TCG profiler not compiled]

Remove that unstable and unuseful command.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Acked-by: Dr. David Alan Gilbert <dave@treblig.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao.li@intel.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Message-Id: <20250703173248.44995-8-philmd@linaro.org>
This commit is contained in:
Philippe Mathieu-Daudé 2025-07-03 11:42:43 +02:00
parent 06810394fd
commit a8e49597d4
4 changed files with 0 additions and 54 deletions

View file

@ -215,30 +215,9 @@ HumanReadableText *qmp_x_query_jit(Error **errp)
return human_readable_text_from_str(buf); return human_readable_text_from_str(buf);
} }
static void tcg_dump_op_count(GString *buf)
{
g_string_append_printf(buf, "[TCG profiler not compiled]\n");
}
HumanReadableText *qmp_x_query_opcount(Error **errp)
{
g_autoptr(GString) buf = g_string_new("");
if (!tcg_enabled()) {
error_setg(errp,
"Opcode count information is only available with accel=tcg");
return NULL;
}
tcg_dump_op_count(buf);
return human_readable_text_from_str(buf);
}
static void hmp_tcg_register(void) static void hmp_tcg_register(void)
{ {
monitor_register_hmp_info_hrt("jit", qmp_x_query_jit); monitor_register_hmp_info_hrt("jit", qmp_x_query_jit);
monitor_register_hmp_info_hrt("opcount", qmp_x_query_opcount);
} }
type_init(hmp_tcg_register); type_init(hmp_tcg_register);

View file

@ -256,20 +256,6 @@ SRST
Show dynamic compiler info. Show dynamic compiler info.
ERST ERST
#if defined(CONFIG_TCG)
{
.name = "opcount",
.args_type = "",
.params = "",
.help = "show dynamic compiler opcode counters",
},
#endif
SRST
``info opcount``
Show dynamic compiler opcode counters
ERST
{ {
.name = "sync-profile", .name = "sync-profile",
.args_type = "mean:-m,no_coalesce:-n,max:i?", .args_type = "mean:-m,no_coalesce:-n,max:i?",

View file

@ -1761,24 +1761,6 @@
'returns': 'HumanReadableText', 'returns': 'HumanReadableText',
'features': [ 'unstable' ] } 'features': [ 'unstable' ] }
##
# @x-query-opcount:
#
# Query TCG opcode counters
#
# Features:
#
# @unstable: This command is meant for debugging.
#
# Returns: TCG opcode counters
#
# Since: 6.2
##
{ 'command': 'x-query-opcount',
'returns': 'HumanReadableText',
'if': 'CONFIG_TCG',
'features': [ 'unstable' ] }
## ##
# @x-query-ramblock: # @x-query-ramblock:
# #

View file

@ -51,7 +51,6 @@ static int query_error_class(const char *cmd)
{ "x-query-usb", ERROR_CLASS_GENERIC_ERROR }, { "x-query-usb", ERROR_CLASS_GENERIC_ERROR },
/* Only valid with accel=tcg */ /* Only valid with accel=tcg */
{ "x-query-jit", ERROR_CLASS_GENERIC_ERROR }, { "x-query-jit", ERROR_CLASS_GENERIC_ERROR },
{ "x-query-opcount", ERROR_CLASS_GENERIC_ERROR },
{ "xen-event-list", ERROR_CLASS_GENERIC_ERROR }, { "xen-event-list", ERROR_CLASS_GENERIC_ERROR },
{ NULL, -1 } { NULL, -1 }
}; };