aboutsummaryrefslogtreecommitdiffstats
path: root/target-arm
diff options
context:
space:
mode:
authorJack Veenstra <veenstra@android.com>2009-05-18 16:02:07 -0700
committerJack Veenstra <veenstra@android.com>2009-05-18 16:02:07 -0700
commit013978687addfae64dbb8e8a179af10922bd2802 (patch)
tree402b33b6cb9f9fdc8915b10d71672de413373ba7 /target-arm
parente858242763a9939257b741df0708b24d9f3e3a74 (diff)
downloadexternal_qemu-013978687addfae64dbb8e8a179af10922bd2802.zip
external_qemu-013978687addfae64dbb8e8a179af10922bd2802.tar.gz
external_qemu-013978687addfae64dbb8e8a179af10922bd2802.tar.bz2
Fix critical bug with emulator tracing where the basic block addresses were wrong.
One of the calls to trace_add_insn() was missing a parameter and was passing in garbage. This parameter "is_thumb" is expected to be 0 or 1 and is OR-ed with the basic block address to distinguish ARM and Thumb instruction blocks.
Diffstat (limited to 'target-arm')
-rw-r--r--target-arm/translate.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-arm/translate.c b/target-arm/translate.c
index ff27d28..87bae82 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -5691,7 +5691,7 @@ static void disas_arm_insn(CPUState * env, DisasContext *s)
insn = ldl_code(s->pc);
#ifdef CONFIG_TRACE
if (tracing) {
- trace_add_insn(insn);
+ trace_add_insn(insn, 0);
ticks = get_insn_ticks_arm(insn);
gen_helper_traceInsn();
}