diff options
author | Blue Swirl <blauwirbel@gmail.com> | 2012-12-04 20:16:07 +0000 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2012-12-16 08:35:24 +0000 |
commit | a8a826a3c3b8c8a1c4def0e9e22b46e78e6163a0 (patch) | |
tree | 4477f11f1fdb1a5f1ad2914d1ebbf86e4c2df435 /target-cris/op_helper.c | |
parent | 5b6dd8683dc30e8e0970db3dd9176732dc819410 (diff) | |
download | qemu-a8a826a3c3b8c8a1c4def0e9e22b46e78e6163a0.zip qemu-a8a826a3c3b8c8a1c4def0e9e22b46e78e6163a0.tar.gz qemu-a8a826a3c3b8c8a1c4def0e9e22b46e78e6163a0.tar.bz2 |
exec: refactor cpu_restore_state
Refactor common code around calls to cpu_restore_state().
tb_find_pc() has now no external users, make it static.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'target-cris/op_helper.c')
-rw-r--r-- | target-cris/op_helper.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/target-cris/op_helper.c b/target-cris/op_helper.c index a7468d4..31db424 100644 --- a/target-cris/op_helper.c +++ b/target-cris/op_helper.c @@ -57,7 +57,6 @@ void tlb_fill(CPUCRISState *env, target_ulong addr, int is_write, int mmu_idx, uintptr_t retaddr) { - TranslationBlock *tb; int ret; D_LOG("%s pc=%x tpc=%x ra=%p\n", __func__, @@ -66,12 +65,7 @@ void tlb_fill(CPUCRISState *env, target_ulong addr, int is_write, int mmu_idx, if (unlikely(ret)) { if (retaddr) { /* now we have a real cpu fault */ - tb = tb_find_pc(retaddr); - if (tb) { - /* the PC is inside the translated code. It means that we have - a virtual CPU fault */ - cpu_restore_state(tb, env, retaddr); - + if (cpu_restore_state(env, retaddr)) { /* Evaluate flags after retranslation. */ helper_top_evaluate_flags(env); } |