Patchwork [ppc-next] target-ppc: List alias names alongside CPU models

login
register
mail settings
Submitter Andreas Färber
Date Feb. 23, 2013, 5:34 p.m.
Message ID <1361640868-20754-1-git-send-email-afaerber@suse.de>
Download mbox | patch
Permalink /patch/222738/
State New
Headers show

Comments

Andreas Färber - Feb. 23, 2013, 5:34 p.m.
Revert adding a separate -cpu ? output section for aliases and list them
per CPU subclass.

Requested-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 target-ppc/translate_init.c |   23 +++++++++++------------
 1 Datei geändert, 11 Zeilen hinzugefügt(+), 12 Zeilen entfernt(-)
Alexander Graf - Feb. 25, 2013, 1:24 p.m.
On 23.02.2013, at 18:34, Andreas Färber wrote:

> Revert adding a separate -cpu ? output section for aliases and list them
> per CPU subclass.
> 
> Requested-by: Alexander Graf <agraf@suse.de>
> Signed-off-by: Andreas Färber <afaerber@suse.de>

Thanks, applied to ppc-next.


Alex

Patch

diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
index 547ba8a..9cb8daa 100644
--- a/target-ppc/translate_init.c
+++ b/target-ppc/translate_init.c
@@ -8330,6 +8330,7 @@  static void ppc_cpu_list_entry(gpointer data, gpointer user_data)
     PowerPCCPUClass *pcc = POWERPC_CPU_CLASS(oc);
     const char *typename = object_class_get_name(oc);
     char *name;
+    int i;
 
 #if defined(TARGET_PPCEMB)
     if (pcc->mmu_model != POWERPC_MMU_BOOKE) {
@@ -8344,6 +8345,16 @@  static void ppc_cpu_list_entry(gpointer data, gpointer user_data)
                      strlen(typename) - strlen("-" TYPE_POWERPC_CPU));
     (*s->cpu_fprintf)(s->file, "PowerPC %-16s PVR %08x\n",
                       name, pcc->pvr);
+    for (i = 0; i < ARRAY_SIZE(ppc_cpu_aliases); i++) {
+        const PowerPCCPUAlias *alias = &ppc_cpu_aliases[i];
+        ObjectClass *alias_oc = ppc_cpu_class_by_name(alias->model);
+
+        if (alias_oc != oc) {
+            continue;
+        }
+        (*s->cpu_fprintf)(s->file, "PowerPC %-16s (alias for %s)\n",
+                          alias->alias, name);
+    }
     g_free(name);
 }
 
@@ -8354,7 +8365,6 @@  void ppc_cpu_list(FILE *f, fprintf_function cpu_fprintf)
         .cpu_fprintf = cpu_fprintf,
     };
     GSList *list;
-    int i;
 
     list = object_class_get_list(TYPE_POWERPC_CPU, false);
     list = g_slist_sort(list, ppc_cpu_list_compare);
@@ -8365,17 +8375,6 @@  void ppc_cpu_list(FILE *f, fprintf_function cpu_fprintf)
     cpu_fprintf(f, "\n");
     cpu_fprintf(f, "PowerPC %-16s\n", "host");
 #endif
-
-    cpu_fprintf(f, "\n");
-    for (i = 0; i < ARRAY_SIZE(ppc_cpu_aliases); i++) {
-        ObjectClass *oc = ppc_cpu_class_by_name(ppc_cpu_aliases[i].model);
-        if (oc == NULL) {
-            /* Hide aliases that point to a TODO or TODO_USER_ONLY model */
-            continue;
-        }
-        cpu_fprintf(f, "PowerPC %-16s\n",
-                    ppc_cpu_aliases[i].alias);
-    }
 }
 
 static void ppc_cpu_defs_entry(gpointer data, gpointer user_data)