aboutsummaryrefslogtreecommitdiff
path: root/target-sparc
diff options
context:
space:
mode:
Diffstat (limited to 'target-sparc')
-rw-r--r--target-sparc/helper.c2
-rw-r--r--target-sparc/translate.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/target-sparc/helper.c b/target-sparc/helper.c
index e6891ccbb1..82a3a4ec90 100644
--- a/target-sparc/helper.c
+++ b/target-sparc/helper.c
@@ -94,7 +94,7 @@ void tlb_fill(target_ulong addr, int is_write, int is_user, void *retaddr)
if (tb) {
/* the PC is inside the translated code. It means that we have
a virtual CPU fault */
- cpu_restore_state(tb, env, pc, NULL);
+ cpu_restore_state(tb, env, pc, (void *)T2);
}
}
cpu_loop_exit();
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index 9f5c2f5c3d..543ed927b6 100644
--- a/target-sparc/translate.c
+++ b/target-sparc/translate.c
@@ -1582,6 +1582,8 @@ static inline int gen_intermediate_code_internal(TranslationBlock * tb,
page_dump(logfile);
}
#endif
+ gen_opc_jump_pc[0] = dc->jump_pc[0];
+ gen_opc_jump_pc[1] = dc->jump_pc[1];
} else {
tb->size = last_pc + 4 - pc_start;
}