qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC qom-cpu v2 0/2] target-sh4: SuperHCPU subclasses


From: Andreas Färber
Subject: Re: [Qemu-devel] [RFC qom-cpu v2 0/2] target-sh4: SuperHCPU subclasses
Date: Mon, 21 Jan 2013 04:45:51 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130105 Thunderbird/17.0.2

Am 21.01.2013 04:28, schrieb Andreas Färber:
> Hello,
> 
> This series introduces SuperH CPU subclasses.
> The first conversion to QOM patch had used a declarative approach reusing
> sh4_def_t as SuperHCPUInfo. This approach now uses imperative instance_init
> functions. To preserve -cpu ? output and case-insensitivity, distinct name
> and type name are used, but allowing use of the type name as done for alpha.
> 
> TODO: guard against abstract types (may apply to other targets as well)
> TODO: move class -> name lookup to cpu.c?
> 
> This series in context:
> + qom-cpu cleanups and bugfixes being queued for 1.4
> + CPUState QOM realizefn and initfn RFC for 1.5 / qom-cpu-next
> ~ SuperHCPU subclasses (this series)
> - SH7750 QOM'ification (to be rebased)
> - cross-target refactoring of cpu_init() and "realized" behavior (TBD)
> 
> Available for testing at:
> git://github.com/afaerber/qemu-cpu.git qom-cpu-sh4-classes.v2
> https://github.com/afaerber/qemu-cpu/commits/qom-cpu-sh4-classes.v2

Note that the default sh4 machine shix does not check the return value
of cpu_init() and silently continues even without CPU. I've used -M r2d
for testing and will try to post a fix for 1.4.

Andreas

> v2:
> * Fixed bug in class name comparison, spotted by Igor.
> * Refactored name -> ObjectClass mapping into new function.
> * Moved realizefn patch into CPUState series, rebased.
> 
> v1 -> preview on GitHub:
> * Redone, using combination of initfn and class_init instead of SuperHCPUInfo.
> * Adopted naming scheme suggested by Eduardo.
> * Split out SuperHCPUClass field movements into separate patch.
> 
> Cc: Aurélien Jarno <address@hidden>
> 
> Cc: Igor Mammedov <address@hidden>
> Cc: Eduardo Habkost <address@hidden>
> 
> Andreas Färber (2):
>   target-sh4: Introduce SuperHCPU subclasses
>   target-sh4: Move PVR/PRR/CVR into SuperHCPUClass
> 
>  hw/sh7750.c            |   10 ++--
>  target-sh4/cpu-qom.h   |   13 +++++
>  target-sh4/cpu.c       |  124 
> +++++++++++++++++++++++++++++++++++++++++++++++-
>  target-sh4/cpu.h       |    3 --
>  target-sh4/translate.c |   94 +++++++++++++-----------------------
>  5 Dateien geändert, 175 Zeilen hinzugefügt(+), 69 Zeilen entfernt(-)

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]