aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--exec.c4
-rw-r--r--target-arm/translate.c6
-rw-r--r--target-m68k/translate.c6
3 files changed, 0 insertions, 16 deletions
diff --git a/exec.c b/exec.c
index 0dd4aa3d8d..b49162cfe7 100644
--- a/exec.c
+++ b/exec.c
@@ -1325,10 +1325,6 @@ int cpu_watchpoint_insert(CPUState *env, target_ulong addr, target_ulong len,
env->watchpoints = wp;
tlb_flush_page(env, addr);
- /* FIXME: This flush is needed because of the hack to make memory ops
- terminate the TB. It can be removed once the proper IO trap and
- re-execute bits are in. */
- tb_flush(env);
if (watchpoint)
*watchpoint = wp;
diff --git a/target-arm/translate.c b/target-arm/translate.c
index 237c5f6941..54eb0670b5 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -8729,12 +8729,6 @@ static inline void gen_intermediate_code_internal(CPUState *env,
gen_set_label(dc->condlabel);
dc->condjmp = 0;
}
- /* Terminate the TB on memory ops if watchpoints are present. */
- /* FIXME: This should be replacd by the deterministic execution
- * IRQ raising bits. */
- if (dc->is_mem && env->watchpoints)
- break;
-
/* Translation stops when a conditional branch is enoutered.
* Otherwise the subsequent code could get translated several times.
* Also stop translation when a page boundary is reached. This
diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index 49e2cb27df..a14f6c560c 100644
--- a/target-m68k/translate.c
+++ b/target-m68k/translate.c
@@ -3027,12 +3027,6 @@ gen_intermediate_code_internal(CPUState *env, TranslationBlock *tb,
dc->insn_pc = dc->pc;
disas_m68k_insn(env, dc);
num_insns++;
-
- /* Terminate the TB on memory ops if watchpoints are present. */
- /* FIXME: This should be replaced by the deterministic execution
- * IRQ raising bits. */
- if (dc->is_mem && env->watchpoints)
- break;
} while (!dc->is_jmp && gen_opc_ptr < gen_opc_end &&
!env->singlestep_enabled &&
(pc_offset) < (TARGET_PAGE_SIZE - 32) &&