summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target-i386/cpu.c6
-rw-r--r--target-i386/cpu.h12
2 files changed, 6 insertions, 12 deletions
diff --git a/target-i386/cpu.c b/target-i386/cpu.c
index 8f18556960..aee4d3e7ce 100644
--- a/target-i386/cpu.c
+++ b/target-i386/cpu.c
@@ -2135,7 +2135,7 @@ out:
return cpu;
}
-X86CPU *cpu_x86_init_user(const char *cpu_model)
+CPUX86State *cpu_x86_init_user(const char *cpu_model)
{
Error *error = NULL;
X86CPU *cpu;
@@ -2153,10 +2153,10 @@ out:
error_free(error);
if (cpu != NULL) {
object_unref(OBJECT(cpu));
- cpu = NULL;
}
+ return NULL;
}
- return cpu;
+ return &cpu->env;
}
static void x86_cpu_cpudef_class_init(ObjectClass *oc, void *data)
diff --git a/target-i386/cpu.h b/target-i386/cpu.h
index 41d7f0ac6e..d5bd74e16b 100644
--- a/target-i386/cpu.h
+++ b/target-i386/cpu.h
@@ -982,7 +982,6 @@ typedef struct CPUX86State {
#include "cpu-qom.h"
-X86CPU *cpu_x86_init_user(const char *cpu_model);
X86CPU *cpu_x86_create(const char *cpu_model, DeviceState *icc_bridge,
Error **errp);
int cpu_x86_exec(CPUX86State *s);
@@ -1171,14 +1170,9 @@ uint64_t cpu_get_tsc(CPUX86State *env);
# define PHYS_ADDR_MASK 0xfffffffffLL
# endif
-static inline CPUX86State *cpu_init(const char *cpu_model)
-{
- X86CPU *cpu = cpu_x86_init_user(cpu_model);
- if (cpu == NULL) {
- return NULL;
- }
- return &cpu->env;
-}
+/* CPU creation function for *-user */
+CPUX86State *cpu_x86_init_user(const char *cpu_model);
+#define cpu_init cpu_x86_init_user
#define cpu_exec cpu_x86_exec
#define cpu_gen_code cpu_x86_gen_code