@@ -9,34 +9,15 @@
#include "qemu/osdep.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-machine-target.h"
+#include "qapi/commands-target-compat.h"
#include "cpu.h"
#include "qapi/qmp/qdict.h"
#include "qapi/qobject-input-visitor.h"
#include "qom/qom-qobject.h"
-static void loongarch_cpu_add_definition(gpointer data, gpointer user_data)
-{
- ObjectClass *oc = data;
- CpuDefinitionInfoList **cpu_list = user_data;
- CpuDefinitionInfo *info = g_new0(CpuDefinitionInfo, 1);
- const char *typename = object_class_get_name(oc);
-
- info->name = cpu_model_from_type(typename);
- info->q_typename = g_strdup(typename);
-
- QAPI_LIST_PREPEND(*cpu_list, info);
-}
-
CpuDefinitionInfoList *qmp_query_cpu_definitions(Error **errp)
{
- CpuDefinitionInfoList *cpu_list = NULL;
- GSList *list;
-
- list = object_class_get_list(TYPE_LOONGARCH_CPU, false);
- g_slist_foreach(list, loongarch_cpu_add_definition, &cpu_list);
- g_slist_free(list);
-
- return cpu_list;
+ return generic_query_cpu_definitions(errp);
}
static const char *cpu_model_advertised_features[] = {
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- target/loongarch/loongarch-qmp-cmds.c | 23 ++--------------------- 1 file changed, 2 insertions(+), 21 deletions(-)