cris: cleanup cpu type name composition

replace ambiguous TYPE macro with a new CRIS_CPU_TYPE_NAME
and use it consistently in the code.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <1507211474-188400-7-git-send-email-imammedo@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
Igor Mammedov 2017-10-05 15:50:40 +02:00 committed by Eduardo Habkost
parent fb92da8488
commit 3936419121
2 changed files with 30 additions and 54 deletions

View File

@ -71,11 +71,11 @@ static ObjectClass *cris_cpu_class_by_name(const char *cpu_model)
#if defined(CONFIG_USER_ONLY) #if defined(CONFIG_USER_ONLY)
if (strcasecmp(cpu_model, "any") == 0) { if (strcasecmp(cpu_model, "any") == 0) {
return object_class_by_name("crisv32-" TYPE_CRIS_CPU); return object_class_by_name(CRIS_CPU_TYPE_NAME("crisv32"));
} }
#endif #endif
typename = g_strdup_printf("%s-" TYPE_CRIS_CPU, cpu_model); typename = g_strdup_printf(CRIS_CPU_TYPE_NAME("%s"), cpu_model);
oc = object_class_by_name(typename); oc = object_class_by_name(typename);
g_free(typename); g_free(typename);
if (oc != NULL && (!object_class_dynamic_cast(oc, TYPE_CRIS_CPU) || if (oc != NULL && (!object_class_dynamic_cast(oc, TYPE_CRIS_CPU) ||
@ -108,7 +108,7 @@ static void cris_cpu_list_entry(gpointer data, gpointer user_data)
const char *typename = object_class_get_name(oc); const char *typename = object_class_get_name(oc);
char *name; char *name;
name = g_strndup(typename, strlen(typename) - strlen("-" TYPE_CRIS_CPU)); name = g_strndup(typename, strlen(typename) - strlen(CRIS_CPU_TYPE_SUFFIX));
(*s->cpu_fprintf)(s->file, " %s\n", name); (*s->cpu_fprintf)(s->file, " %s\n", name);
g_free(name); g_free(name);
} }
@ -254,38 +254,6 @@ static void crisv32_cpu_class_init(ObjectClass *oc, void *data)
ccc->vr = 32; ccc->vr = 32;
} }
#define TYPE(model) model "-" TYPE_CRIS_CPU
static const TypeInfo cris_cpu_model_type_infos[] = {
{
.name = TYPE("crisv8"),
.parent = TYPE_CRIS_CPU,
.class_init = crisv8_cpu_class_init,
}, {
.name = TYPE("crisv9"),
.parent = TYPE_CRIS_CPU,
.class_init = crisv9_cpu_class_init,
}, {
.name = TYPE("crisv10"),
.parent = TYPE_CRIS_CPU,
.class_init = crisv10_cpu_class_init,
}, {
.name = TYPE("crisv11"),
.parent = TYPE_CRIS_CPU,
.class_init = crisv11_cpu_class_init,
}, {
.name = TYPE("crisv17"),
.parent = TYPE_CRIS_CPU,
.class_init = crisv17_cpu_class_init,
}, {
.name = TYPE("crisv32"),
.parent = TYPE_CRIS_CPU,
.class_init = crisv32_cpu_class_init,
}
};
#undef TYPE
static void cris_cpu_class_init(ObjectClass *oc, void *data) static void cris_cpu_class_init(ObjectClass *oc, void *data)
{ {
DeviceClass *dc = DEVICE_CLASS(oc); DeviceClass *dc = DEVICE_CLASS(oc);
@ -320,24 +288,29 @@ static void cris_cpu_class_init(ObjectClass *oc, void *data)
cc->tcg_initialize = cris_initialize_tcg; cc->tcg_initialize = cris_initialize_tcg;
} }
static const TypeInfo cris_cpu_type_info = { #define DEFINE_CRIS_CPU_TYPE(cpu_model, initfn) \
.name = TYPE_CRIS_CPU, { \
.parent = TYPE_CPU, .parent = TYPE_CRIS_CPU, \
.instance_size = sizeof(CRISCPU), .class_init = initfn, \
.instance_init = cris_cpu_initfn, .name = CRIS_CPU_TYPE_NAME(cpu_model), \
.abstract = true, }
.class_size = sizeof(CRISCPUClass),
.class_init = cris_cpu_class_init, static const TypeInfo cris_cpu_model_type_infos[] = {
{
.name = TYPE_CRIS_CPU,
.parent = TYPE_CPU,
.instance_size = sizeof(CRISCPU),
.instance_init = cris_cpu_initfn,
.abstract = true,
.class_size = sizeof(CRISCPUClass),
.class_init = cris_cpu_class_init,
},
DEFINE_CRIS_CPU_TYPE("crisv8", crisv8_cpu_class_init),
DEFINE_CRIS_CPU_TYPE("crisv9", crisv9_cpu_class_init),
DEFINE_CRIS_CPU_TYPE("crisv10", crisv10_cpu_class_init),
DEFINE_CRIS_CPU_TYPE("crisv11", crisv11_cpu_class_init),
DEFINE_CRIS_CPU_TYPE("crisv17", crisv17_cpu_class_init),
DEFINE_CRIS_CPU_TYPE("crisv32", crisv32_cpu_class_init),
}; };
static void cris_cpu_register_types(void) DEFINE_TYPES(cris_cpu_model_type_infos)
{
int i;
type_register_static(&cris_cpu_type_info);
for (i = 0; i < ARRAY_SIZE(cris_cpu_model_type_infos); i++) {
type_register_static(&cris_cpu_model_type_infos[i]);
}
}
type_init(cris_cpu_register_types)

View File

@ -269,6 +269,9 @@ enum {
#define cpu_init(cpu_model) cpu_generic_init(TYPE_CRIS_CPU, cpu_model) #define cpu_init(cpu_model) cpu_generic_init(TYPE_CRIS_CPU, cpu_model)
#define CRIS_CPU_TYPE_SUFFIX "-" TYPE_CRIS_CPU
#define CRIS_CPU_TYPE_NAME(name) (name CRIS_CPU_TYPE_SUFFIX)
#define cpu_signal_handler cpu_cris_signal_handler #define cpu_signal_handler cpu_cris_signal_handler
/* MMU modes definitions */ /* MMU modes definitions */