summaryrefslogtreecommitdiff
path: root/target-cris/cpu.h
diff options
context:
space:
mode:
authorAndreas Färber <afaerber@suse.de>2012-05-05 11:37:07 +0200
committerAndreas Färber <afaerber@suse.de>2012-06-04 23:00:42 +0200
commit9fca5636e1883346418d437320f43b0c34cb6cc1 (patch)
tree4fd2f6d463a7784870a1633046b1680b883127f9 /target-cris/cpu.h
parentdd10ce6d8a437b8c5d2ce9c193a3b64080038c43 (diff)
downloadqemu-9fca5636e1883346418d437320f43b0c34cb6cc1.tar.gz
target-cris: Let cpu_cris_init() return CRISCPU
Turn cpu_init macro into a static inline function returning CPUCRISState for backwards compatibility. Signed-off-by: Andreas Färber <afaerber@suse.de> Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Diffstat (limited to 'target-cris/cpu.h')
-rw-r--r--target-cris/cpu.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/target-cris/cpu.h b/target-cris/cpu.h
index 5449cc48b6..a7603678fc 100644
--- a/target-cris/cpu.h
+++ b/target-cris/cpu.h
@@ -171,7 +171,7 @@ typedef struct CPUCRISState {
#include "cpu-qom.h"
-CPUCRISState *cpu_cris_init(const char *cpu_model);
+CRISCPU *cpu_cris_init(const char *cpu_model);
int cpu_cris_exec(CPUCRISState *s);
void cpu_cris_close(CPUCRISState *s);
void do_interrupt(CPUCRISState *env);
@@ -216,7 +216,15 @@ enum {
#define TARGET_PHYS_ADDR_SPACE_BITS 32
#define TARGET_VIRT_ADDR_SPACE_BITS 32
-#define cpu_init cpu_cris_init
+static inline CPUCRISState *cpu_init(const char *cpu_model)
+{
+ CRISCPU *cpu = cpu_cris_init(cpu_model);
+ if (cpu == NULL) {
+ return NULL;
+ }
+ return &cpu->env;
+}
+
#define cpu_exec cpu_cris_exec
#define cpu_gen_code cpu_cris_gen_code
#define cpu_signal_handler cpu_cris_signal_handler