]> xenbits.xensource.com Git - qemu-xen-3.3-testing.git/commitdiff
Unify '-cpu ?' option.
authorj_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162>
Fri, 12 Oct 2007 06:47:46 +0000 (06:47 +0000)
committerj_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162>
Fri, 12 Oct 2007 06:47:46 +0000 (06:47 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3380 c046a42c-6fe2-441c-8c8c-71466251a162

linux-user/main.c
target-arm/cpu.h
target-arm/helper.c
target-mips/cpu.h
target-ppc/cpu.h
target-sparc/cpu.h
vl.c
vl.h

index 7de7ff5a717a8e17705a15e9cea7f3984bd4c922..1e406d3d4316a1f3aa82ad2de3df4592528701a6 100644 (file)
@@ -1945,14 +1945,9 @@ int main(int argc, char **argv)
         } else if (!strcmp(r, "cpu")) {
             cpu_model = argv[optind++];
             if (strcmp(cpu_model, "?") == 0) {
-#if defined(TARGET_PPC)
-                ppc_cpu_list(stdout, &fprintf);
-#elif defined(TARGET_ARM)
-                arm_cpu_list();
-#elif defined(TARGET_MIPS)
-                mips_cpu_list(stdout, &fprintf);
-#elif defined(TARGET_SPARC)
-                sparc_cpu_list(stdout, &fprintf);
+/* XXX: implement xxx_cpu_list for targets that still miss it */
+#if defined(cpu_list)
+                    cpu_list(stdout, &fprintf);
 #endif
                 _exit(1);
             }
index 76fdbb26bf322ab9eb185c52963b3d230641d41c..7510a2480adfdfcbbe9817b2922a25b6044aaf6a 100644 (file)
@@ -260,7 +260,7 @@ static inline int arm_feature(CPUARMState *env, int feature)
     return (env->features & (1u << feature)) != 0;
 }
 
-void arm_cpu_list(void);
+void arm_cpu_list(FILE *f, int (*cpu_fprintf)(FILE *f, const char *fmt, ...));
 void cpu_arm_set_model(CPUARMState *env, const char *name);
 
 void cpu_arm_set_cp_io(CPUARMState *env, int cpnum,
@@ -299,6 +299,7 @@ void cpu_arm_set_cp_io(CPUARMState *env, int cpnum,
 #define cpu_exec cpu_arm_exec
 #define cpu_gen_code cpu_arm_gen_code
 #define cpu_signal_handler cpu_arm_signal_handler
+#define cpu_list arm_cpu_list
 
 #include "cpu-all.h"
 
index 01573a2380e57a595a6fcefcc08750aea95f9e8a..4501feaef124e5fab33e28f08ade621d7f28d820 100644 (file)
@@ -126,13 +126,13 @@ static const struct arm_cpu_t arm_cpu_names[] = {
     { 0, NULL}
 };
 
-void arm_cpu_list(void)
+void arm_cpu_list(FILE *f, int (*cpu_fprintf)(FILE *f, const char *fmt, ...))
 {
     int i;
 
-    printf ("Available CPUs:\n");
+    (*cpu_fprintf)(f, "Available CPUs:\n");
     for (i = 0; arm_cpu_names[i].name; i++) {
-        printf("  %s\n", arm_cpu_names[i].name);
+        (*cpu_fprintf)(f, "  %s\n", arm_cpu_names[i].name);
     }
 }
 
index 569f9325bfea4a17c8e256ad5b1c7078957471d2..137260f32934cac451070aa9900b5c7f603087c6 100644 (file)
@@ -482,6 +482,7 @@ int cpu_mips_register (CPUMIPSState *env, mips_def_t *def);
 #define cpu_exec cpu_mips_exec
 #define cpu_gen_code cpu_mips_gen_code
 #define cpu_signal_handler cpu_mips_signal_handler
+#define cpu_list mips_cpu_list
 
 #include "cpu-all.h"
 
index f4d9004f26bdb09b32e9b128a8abe8f3f1ec021a..b424abcebbc666da3cfd80dd8be6b9653e829a2a 100644 (file)
@@ -697,6 +697,7 @@ int ppc_dcr_write (ppc_dcr_t *dcr_env, int dcrn, target_ulong val);
 #define cpu_exec cpu_ppc_exec
 #define cpu_gen_code cpu_ppc_gen_code
 #define cpu_signal_handler cpu_ppc_signal_handler
+#define cpu_list ppc_cpu_list
 
 #include "cpu-all.h"
 
index 5c8c49ab63b34cb58588a13a0e5caa61b0e5551c..fac18a777562d51b576dbf9d455e8ec562a4bc33 100644 (file)
@@ -315,6 +315,7 @@ void cpu_check_irqs(CPUSPARCState *env);
 #define cpu_exec cpu_sparc_exec
 #define cpu_gen_code cpu_sparc_gen_code
 #define cpu_signal_handler cpu_sparc_signal_handler
+#define cpu_list sparc_cpu_list
 
 #include "cpu-all.h"
 
diff --git a/vl.c b/vl.c
index 01bb06edad1d729a6fe450a81302d081443acb08..65c3e6a47e052c6c9d1ed9c0dffe33f42a3d16f8 100644 (file)
--- a/vl.c
+++ b/vl.c
@@ -7690,14 +7690,9 @@ int main(int argc, char **argv)
             case QEMU_OPTION_cpu:
                 /* hw initialization will check this */
                 if (*optarg == '?') {
-#if defined(TARGET_PPC)
-                    ppc_cpu_list(stdout, &fprintf);
-#elif defined(TARGET_ARM)
-                    arm_cpu_list();
-#elif defined(TARGET_MIPS)
-                    mips_cpu_list(stdout, &fprintf);
-#elif defined(TARGET_SPARC)
-                    sparc_cpu_list(stdout, &fprintf);
+/* XXX: implement xxx_cpu_list for targets that still miss it */
+#if defined(cpu_list)
+                    cpu_list(stdout, &fprintf);
 #endif
                     exit(0);
                 } else {
diff --git a/vl.h b/vl.h
index aa7590063e74fdb457724a19fddb0916404f3c00..afa2cd6bb1d85d75981625ea6fd0963acb75a551 100644 (file)
--- a/vl.h
+++ b/vl.h
@@ -741,14 +741,6 @@ int qemu_register_machine(QEMUMachine *m);
 
 typedef void SetIRQFunc(void *opaque, int irq_num, int level);
 
-#if defined(TARGET_PPC)
-void ppc_cpu_list (FILE *f, int (*cpu_fprintf)(FILE *f, const char *fmt, ...));
-#endif
-
-#if defined(TARGET_MIPS)
-void mips_cpu_list (FILE *f, int (*cpu_fprintf)(FILE *f, const char *fmt, ...));
-#endif
-
 #include "hw/irq.h"
 
 /* ISA bus */