From: Max Filippov <jcmvb...@gmail.com> Zero out tcg_ctx.gen_opc_instr_start for instructions representing the last guest opcode in the TB.
Cc: qemu-sta...@nongnu.org Signed-off-by: Max Filippov <jcmvb...@gmail.com> Signed-off-by: Blue Swirl <blauwir...@gmail.com> (cherry picked from commit 36f25d2537c40c6c47f4abee5d31a24863d1adf7) *modified to use older global version of gen_opc_instr_start Signed-off-by: Michael Roth <mdr...@linux.vnet.ibm.com> --- target-xtensa/translate.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c index e5a3f49..87f26c2 100644 --- a/target-xtensa/translate.c +++ b/target-xtensa/translate.c @@ -2962,7 +2962,11 @@ static void gen_intermediate_code_internal( gen_icount_end(tb, insn_count); *tcg_ctx.gen_opc_ptr = INDEX_op_end; - if (!search_pc) { + if (search_pc) { + j = tcg_ctx.gen_opc_ptr - tcg_ctx.gen_opc_buf; + memset(gen_opc_instr_start + lj + 1, 0, + (j - lj) * sizeof(gen_opc_instr_start[0])); + } else { tb->size = dc.pc - pc_start; tb->icount = insn_count; } -- 1.7.9.5