When multiple QOM types are registered in the same file,
it is simpler to use the the DEFINE_TYPES() macro. In
particular because type array declared with such macro
are easier to review.
In few commits we are going to add more types, so replace
the type_register_static() to ease further reviews.
Signed-off-by: Philippe Mathieu-Daudé
Reviewed-by: Richard Henderson
Reviewed-by: Mark Cave-Ayland
Message-Id: <20231013140116.255-17-phi...@linaro.org>
---
target/sparc/cpu.c | 23 +--
1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/target/sparc/cpu.c b/target/sparc/cpu.c
index dc9ead21fc..42b13ab63f 100644
--- a/target/sparc/cpu.c
+++ b/target/sparc/cpu.c
@@ -949,17 +949,21 @@ static void sparc_cpu_class_init(ObjectClass *oc, void
*data)
cc->tcg_ops = _tcg_ops;
}
-static const TypeInfo sparc_cpu_type_info = {
-.name = TYPE_SPARC_CPU,
-.parent = TYPE_CPU,
-.instance_size = sizeof(SPARCCPU),
-.instance_align = __alignof(SPARCCPU),
-.instance_init = sparc_cpu_initfn,
-.abstract = true,
-.class_size = sizeof(SPARCCPUClass),
-.class_init = sparc_cpu_class_init,
+static const TypeInfo sparc_cpu_types[] = {
+{
+.name = TYPE_SPARC_CPU,
+.parent = TYPE_CPU,
+.instance_size = sizeof(SPARCCPU),
+.instance_align = __alignof(SPARCCPU),
+.instance_init = sparc_cpu_initfn,
+.abstract = true,
+.class_size = sizeof(SPARCCPUClass),
+.class_init = sparc_cpu_class_init,
+}
};
+DEFINE_TYPES(sparc_cpu_types)
+
static void sparc_cpu_cpudef_class_init(ObjectClass *oc, void *data)
{
SPARCCPUClass *scc = SPARC_CPU_CLASS(oc);
@@ -984,7 +988,6 @@ static void sparc_cpu_register_types(void)
{
int i;
-type_register_static(_cpu_type_info);
for (i = 0; i < ARRAY_SIZE(sparc_defs); i++) {
sparc_register_cpudef_type(_defs[i]);
}
--
2.41.0