diff options
Diffstat (limited to 'target-arm/translate.c')
-rw-r--r-- | target-arm/translate.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/target-arm/translate.c b/target-arm/translate.c index 6c8ebde..ca04700 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -5813,7 +5813,7 @@ static void disas_arm_insn(CPUState * env, DisasContext *s) #ifdef CONFIG_MEMCHECK if (watch_call_stack(s)) { - if (is_ret_address(s->pc)) { + if (is_ret_address(env, s->pc)) { set_on_ret(s->pc); } if (is_arm_bl_or_blx(insn)) { @@ -8197,10 +8197,10 @@ static void disas_thumb_insn(CPUState *env, DisasContext *s) #ifdef CONFIG_MEMCHECK if (watch_call_stack(s)) { target_ulong ret_off; - if (is_ret_address(s->pc)) { + if (is_ret_address(env, s->pc)) { set_on_ret(s->pc); } - if (is_thumb_bl_or_blx(insn, &ret_off)) { + if (is_thumb_bl_or_blx(insn, s->pc, &ret_off)) { set_on_call(s->pc, s->pc + ret_off); if (!s->search_pc) { register_ret_address(env, s->pc + ret_off); |