On 3/25/25 08:40, Philippe Mathieu-Daudé wrote:
> 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é <philmd@linaro.org>
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> target/mips/cpu.c | 23 +++++++++++++----------
> 1 file changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/target/mips/cpu.c b/target/mips/cpu.c
> index b207106dd79..097554fd8ae 100644
> --- a/target/mips/cpu.c
> +++ b/target/mips/cpu.c
> @@ -597,17 +597,21 @@ static void mips_cpu_class_init(ObjectClass *c, void *data)
> #endif /* CONFIG_TCG */
> }
>
> -static const TypeInfo mips_cpu_type_info = {
> - .name = TYPE_MIPS_CPU,
> - .parent = TYPE_CPU,
> - .instance_size = sizeof(MIPSCPU),
> - .instance_align = __alignof(MIPSCPU),
> - .instance_init = mips_cpu_initfn,
> - .abstract = true,
> - .class_size = sizeof(MIPSCPUClass),
> - .class_init = mips_cpu_class_init,
> +static const TypeInfo mips_cpu_types[] = {
> + {
> + .name = TYPE_MIPS_CPU,
> + .parent = TYPE_CPU,
> + .instance_size = sizeof(MIPSCPU),
> + .instance_align = __alignof(MIPSCPU),
> + .instance_init = mips_cpu_initfn,
> + .abstract = true,
> + .class_size = sizeof(MIPSCPUClass),
> + .class_init = mips_cpu_class_init,
> + }
> };
>
> +DEFINE_TYPES(mips_cpu_types)
> +
> static void mips_cpu_cpudef_class_init(ObjectClass *oc, void *data)
> {
> MIPSCPUClass *mcc = MIPS_CPU_CLASS(oc);
> @@ -632,7 +636,6 @@ static void mips_cpu_register_types(void)
> {
> int i;
>
> - type_register_static(&mips_cpu_type_info);
> for (i = 0; i < mips_defs_number; i++) {
> mips_register_cpudef_type(&mips_defs[i]);
> }
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>