plugins/lockstep: clean-up output

We were repeating information which wasn't super clear. As we already
will have dumped the last failing PC just note the divergence and dump
the previous instruction log.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240705084047.857176-27-alex.bennee@linaro.org>
This commit is contained in:
Alex Bennée 2024-07-05 09:40:33 +01:00
parent 13167b5fe9
commit 3b8550c955
1 changed files with 8 additions and 8 deletions

View File

@ -135,10 +135,13 @@ static void report_divergance(ExecState *us, ExecState *them)
/* Output short log entry of going out of sync... */
if (verbose || divrec.distance == 1 || diverged) {
g_string_printf(out,
"@ 0x%016" PRIx64 " vs 0x%016" PRIx64
g_string_printf(out, "@ "
"0x%016" PRIx64 " (%" PRId64 ") vs "
"0x%016" PRIx64 " (%" PRId64 ")"
" (%d/%d since last)\n",
us->pc, them->pc, g_slist_length(divergence_log),
us->pc, us->insn_count,
them->pc, them->insn_count,
g_slist_length(divergence_log),
divrec.distance);
qemu_plugin_outs(out->str);
}
@ -147,10 +150,7 @@ static void report_divergance(ExecState *us, ExecState *them)
int i;
GSList *entry;
g_string_printf(out,
"Δ insn_count @ 0x%016" PRIx64
" (%"PRId64") vs 0x%016" PRIx64 " (%"PRId64")\n",
us->pc, us->insn_count, them->pc, them->insn_count);
g_string_printf(out, "Δ too high, we have diverged, previous insns\n");
for (entry = log, i = 0;
g_slist_next(entry) && i < 5;
@ -163,7 +163,7 @@ static void report_divergance(ExecState *us, ExecState *them)
prev->insn_count);
}
qemu_plugin_outs(out->str);
qemu_plugin_outs("too much divergence... giving up.");
qemu_plugin_outs("giving up\n");
qemu_plugin_uninstall(our_id, plugin_cleanup);
}
}