summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdgar E. Iglesias <edgar.iglesias@gmail.com>2009-11-12 02:14:45 +0100
committerEdgar E. Iglesias <edgar.iglesias@gmail.com>2009-11-12 02:14:45 +0100
commit95b279de95c164bd343ad7e2cc399406d4bf9733 (patch)
treec449bcf1cb441d606997eca055acd989acc9948d
parentmicroblaze: Unbreak reset. (diff)
downloadqemu-kvm-95b279de95c164bd343ad7e2cc399406d4bf9733.tar.gz
qemu-kvm-95b279de95c164bd343ad7e2cc399406d4bf9733.tar.bz2
qemu-kvm-95b279de95c164bd343ad7e2cc399406d4bf9733.zip
microblaze: Restore env when raising unmapped bus access.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
-rw-r--r--target-microblaze/op_helper.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/target-microblaze/op_helper.c b/target-microblaze/op_helper.c
index ee4f62313..a342467d5 100644
--- a/target-microblaze/op_helper.c
+++ b/target-microblaze/op_helper.c
@@ -249,6 +249,7 @@ void do_unassigned_access(target_phys_addr_t addr, int is_write, int is_exec,
qemu_log_mask(CPU_LOG_INT, "Unassigned " TARGET_FMT_plx " wr=%d exe=%d\n",
addr, is_write, is_exec);
if (!(env->sregs[SR_MSR] & MSR_EE)) {
+ env = saved_env;
return;
}
@@ -264,4 +265,5 @@ void do_unassigned_access(target_phys_addr_t addr, int is_write, int is_exec,
helper_raise_exception(EXCP_HW_EXCP);
}
}
+ env = saved_env;
}