From 30bf942d8cd822b22530be602084a0810db45936 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sat, 5 May 2012 13:33:04 +0200 Subject: target-mips: Let cpu_mips_init() return MIPSCPU MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Turn cpu_init macro into a static inline function returning CPUMIPSState for backwards compatibility. Signed-off-by: Andreas Färber --- target-mips/cpu.h | 12 ++++++++++-- target-mips/translate.c | 4 ++-- 2 files changed, 12 insertions(+), 4 deletions(-) (limited to 'target-mips') diff --git a/target-mips/cpu.h b/target-mips/cpu.h index 44c1152..c7c9cb9 100644 --- a/target-mips/cpu.h +++ b/target-mips/cpu.h @@ -496,7 +496,6 @@ void cpu_unassigned_access(CPUMIPSState *env, target_phys_addr_t addr, void mips_cpu_list (FILE *f, fprintf_function cpu_fprintf); -#define cpu_init cpu_mips_init #define cpu_exec cpu_mips_exec #define cpu_gen_code cpu_mips_gen_code #define cpu_signal_handler cpu_mips_signal_handler @@ -626,9 +625,18 @@ enum { #define CPU_INTERRUPT_WAKE CPU_INTERRUPT_TGT_INT_0 int cpu_mips_exec(CPUMIPSState *s); -CPUMIPSState *cpu_mips_init(const char *cpu_model); +MIPSCPU *cpu_mips_init(const char *cpu_model); int cpu_mips_signal_handler(int host_signum, void *pinfo, void *puc); +static inline CPUMIPSState *cpu_init(const char *cpu_model) +{ + MIPSCPU *cpu = cpu_mips_init(cpu_model); + if (cpu == NULL) { + return NULL; + } + return &cpu->env; +} + /* mips_timer.c */ uint32_t cpu_mips_get_random (CPUMIPSState *env); uint32_t cpu_mips_get_count (CPUMIPSState *env); diff --git a/target-mips/translate.c b/target-mips/translate.c index 1ab44ed..4e15ee3 100644 --- a/target-mips/translate.c +++ b/target-mips/translate.c @@ -12689,7 +12689,7 @@ static void mips_tcg_init(void) #include "translate_init.c" -CPUMIPSState *cpu_mips_init (const char *cpu_model) +MIPSCPU *cpu_mips_init(const char *cpu_model) { MIPSCPU *cpu; CPUMIPSState *env; @@ -12711,7 +12711,7 @@ CPUMIPSState *cpu_mips_init (const char *cpu_model) mips_tcg_init(); cpu_reset(CPU(cpu)); qemu_init_vcpu(env); - return env; + return cpu; } void cpu_state_reset(CPUMIPSState *env) -- cgit v1.1