aboutsummaryrefslogtreecommitdiffstats
path: root/vl-android.c
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@google.com>2009-10-15 18:18:09 -0700
committerXavier Ducrohet <xav@android.com>2009-10-16 17:37:07 -0700
commitdba3a6fdf7ec051143f0d889721f56b2e28803f3 (patch)
tree2a4d76772b9f6169a06fa4e685b6d6dd50957ac4 /vl-android.c
parent73b9926fd43c9b5cd00319c5d117448bd1b31112 (diff)
downloadexternal_qemu-dba3a6fdf7ec051143f0d889721f56b2e28803f3.zip
external_qemu-dba3a6fdf7ec051143f0d889721f56b2e28803f3.tar.gz
external_qemu-dba3a6fdf7ec051143f0d889721f56b2e28803f3.tar.bz2
Fix the -trace emulator option. (do not merge)
A critical test in the execution loop was missed in the latest huge integration. Also optimize slightly the basic-block start recording helper interface.
Diffstat (limited to 'vl-android.c')
-rw-r--r--vl-android.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/vl-android.c b/vl-android.c
index aa5b3cf..d6feced 100644
--- a/vl-android.c
+++ b/vl-android.c
@@ -4461,6 +4461,15 @@ static int qemu_cpu_exec(CPUState *env)
env->icount_decr.u16.low = decr;
env->icount_extra = count;
}
+#ifdef CONFIG_TRACE
+ if (tbflush_requested) {
+ tbflush_requested = 0;
+ tb_flush(env);
+ return EXCP_INTERRUPT;
+ }
+#endif
+
+
ret = cpu_exec(env);
#ifdef CONFIG_PROFILER
qemu_time += profile_getclock() - ti;
@@ -5843,7 +5852,7 @@ int main(int argc, char **argv, char **envp)
audio_input_source = (char*)optarg;
break;
#ifdef CONFIG_TRACE
- case QEMU_OPTION_trace_file:
+ case QEMU_OPTION_trace:
trace_filename = optarg;
tracing = 1;
break;