aboutsummaryrefslogtreecommitdiff
path: root/target-sparc/translate.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2004-04-25 17:56:08 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2004-04-25 17:56:08 +0000
commit658138bcbcde308472bc6980957b6b9dbd9348f3 (patch)
tree7e11021fa3b9f8f4477604b90598146bce7ea7ce /target-sparc/translate.c
parent1190935d98ec8a8e2e2438858bee8bd5e49ee324 (diff)
flush insn support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@743 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sparc/translate.c')
-rw-r--r--target-sparc/translate.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index 41decb18ff..bcc810b208 100644
--- a/target-sparc/translate.c
+++ b/target-sparc/translate.c
@@ -650,7 +650,8 @@ static void disas_sparc_insn(DisasContext * dc)
}
goto jmp_insn;
case 0x3b: /* flush */
- /* nothing to do */
+ gen_op_add_T1_T0();
+ gen_op_flush_T0();
break;
case 0x3c: /* save */
save_state(dc);
@@ -878,3 +879,9 @@ target_ulong cpu_get_phys_page_debug(CPUState *env, target_ulong addr)
{
return addr;
}
+
+void helper_flush(target_ulong addr)
+{
+ addr &= ~7;
+ tb_invalidate_page_range(addr, addr + 8);
+}