return isa_str;
}
-static gint riscv_cpu_list_compare(gconstpointer a, gconstpointer b)
-{
- ObjectClass *class_a = (ObjectClass *)a;
- ObjectClass *class_b = (ObjectClass *)b;
- const char *name_a, *name_b;
-
- name_a = object_class_get_name(class_a);
- name_b = object_class_get_name(class_b);
- return strcmp(name_a, name_b);
-}
-
-static void riscv_cpu_list_entry(gpointer data, gpointer user_data)
-{
- const char *typename = object_class_get_name(OBJECT_CLASS(data));
- int len = strlen(typename) - strlen(RISCV_CPU_TYPE_SUFFIX);
-
- qemu_printf("%.*s\n", len, typename);
-}
-
-void riscv_cpu_list(void)
-{
- GSList *list;
-
- list = object_class_get_list(TYPE_RISCV_CPU, false);
- list = g_slist_sort(list, riscv_cpu_list_compare);
- g_slist_foreach(list, riscv_cpu_list_entry, NULL);
- g_slist_free(list);
-}
-
#define DEFINE_CPU(type_name, initfn) \
{ \
.name = type_name, \
MMUAccessType access_type, int mmu_idx,
bool probe, uintptr_t retaddr);
char *riscv_isa_string(RISCVCPU *cpu);
-void riscv_cpu_list(void);
-#define cpu_list riscv_cpu_list
#define cpu_mmu_index riscv_cpu_mmu_index
#ifndef CONFIG_USER_ONLY