X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=target-unicore32%2Fhelper.c;h=9bf4fea5db72b9ea2831d8baea74b742687553af;hb=HEAD;hp=3a92232de5f2509172ae471d66d550da5de17d4c;hpb=e205842bd91fbd15655ff40a4282b1ffcbc301b1;p=qemu.git diff --git a/target-unicore32/helper.c b/target-unicore32/helper.c index 3a92232de..9bf4fea5d 100644 --- a/target-unicore32/helper.c +++ b/target-unicore32/helper.c @@ -30,7 +30,6 @@ CPUUniCore32State *uc32_cpu_init(const char *cpu_model) UniCore32CPU *cpu; CPUUniCore32State *env; ObjectClass *oc; - static int inited = 1; oc = cpu_class_by_name(TYPE_UNICORE32_CPU, cpu_model); if (oc == NULL) { @@ -38,14 +37,9 @@ CPUUniCore32State *uc32_cpu_init(const char *cpu_model) } cpu = UNICORE32_CPU(object_new(object_class_get_name(oc))); env = &cpu->env; - env->cpu_model_str = cpu_model; - if (inited) { - inited = 0; - uc32_translate_init(); - } + object_property_set_bool(OBJECT(cpu), true, "realized", NULL); - qemu_init_vcpu(env); return env; } @@ -247,8 +241,11 @@ void switch_mode(CPUUniCore32State *env, int mode) } } -void do_interrupt(CPUUniCore32State *env) +void uc32_cpu_do_interrupt(CPUState *cs) { + UniCore32CPU *cpu = UNICORE32_CPU(cs); + CPUUniCore32State *env = &cpu->env; + cpu_abort(env, "NO interrupt in user mode\n"); }