mirror of https://gitee.com/openkylin/qemu.git
sh4: remove SuperHCPUClass::name field
the field contains upper-cased cpu model name and is used for printing supported cpu model names for '-cpu help'. Considering that cpu model lookup in superh_cpu_class_by_name() is case-insensitive, we can drop upper-casing when printing supported cpus list and use cpu type directly to do the same by cutting out SUPERH_CPU_TYPE_SUFFIX from typename. It allows to remove SuperHCPUClass::name, which practically duplicates names defined by TYPE_SH*_CPU definitions and simplify sh*_class_init()/SuperHCPUClass a bit. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <1507211474-188400-24-git-send-email-imammedo@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
parent
d5ebe62556
commit
633cd13556
|
@ -39,7 +39,6 @@
|
|||
* SuperHCPUClass:
|
||||
* @parent_realize: The parent class' realize handler.
|
||||
* @parent_reset: The parent class' reset handler.
|
||||
* @name: The name.
|
||||
* @pvr: Processor Version Register
|
||||
* @prr: Processor Revision Register
|
||||
* @cvr: Cache Version Register
|
||||
|
@ -54,7 +53,6 @@ typedef struct SuperHCPUClass {
|
|||
DeviceRealize parent_realize;
|
||||
void (*parent_reset)(CPUState *cpu);
|
||||
|
||||
const char *name;
|
||||
uint32_t pvr;
|
||||
uint32_t prr;
|
||||
uint32_t cvr;
|
||||
|
|
|
@ -98,12 +98,11 @@ static gint superh_cpu_list_compare(gconstpointer a, gconstpointer b)
|
|||
|
||||
static void superh_cpu_list_entry(gpointer data, gpointer user_data)
|
||||
{
|
||||
ObjectClass *oc = data;
|
||||
SuperHCPUClass *scc = SUPERH_CPU_CLASS(oc);
|
||||
SuperHCPUListState *s = user_data;
|
||||
const char *typename = object_class_get_name(OBJECT_CLASS(data));
|
||||
int len = strlen(typename) - strlen(SUPERH_CPU_TYPE_SUFFIX);
|
||||
|
||||
(*s->cpu_fprintf)(s->file, "%s\n",
|
||||
scc->name);
|
||||
(*s->cpu_fprintf)(s->file, "%.*s\n", len, typename);
|
||||
}
|
||||
|
||||
void sh4_cpu_list(FILE *f, fprintf_function cpu_fprintf)
|
||||
|
@ -156,7 +155,6 @@ static void sh7750r_class_init(ObjectClass *oc, void *data)
|
|||
{
|
||||
SuperHCPUClass *scc = SUPERH_CPU_CLASS(oc);
|
||||
|
||||
scc->name = "SH7750R";
|
||||
scc->pvr = 0x00050000;
|
||||
scc->prr = 0x00000100;
|
||||
scc->cvr = 0x00110000;
|
||||
|
@ -175,7 +173,6 @@ static void sh7751r_class_init(ObjectClass *oc, void *data)
|
|||
{
|
||||
SuperHCPUClass *scc = SUPERH_CPU_CLASS(oc);
|
||||
|
||||
scc->name = "SH7751R";
|
||||
scc->pvr = 0x04050005;
|
||||
scc->prr = 0x00000113;
|
||||
scc->cvr = 0x00110000; /* Neutered caches, should be 0x20480000 */
|
||||
|
@ -194,7 +191,6 @@ static void sh7785_class_init(ObjectClass *oc, void *data)
|
|||
{
|
||||
SuperHCPUClass *scc = SUPERH_CPU_CLASS(oc);
|
||||
|
||||
scc->name = "SH7785";
|
||||
scc->pvr = 0x10300700;
|
||||
scc->prr = 0x00000200;
|
||||
scc->cvr = 0x71440211;
|
||||
|
|
Loading…
Reference in New Issue