[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [qemu-upstream-unstable] target-xtensa: fix search_pc for the last TB opcode



commit 1205b8080fb596ce50b2dc0466587c012d9f979d
Author:     Max Filippov <jcmvbkbc@xxxxxxxxx>
AuthorDate: Thu Dec 20 00:04:09 2012 +0400
Commit:     Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
CommitDate: Tue Jan 15 23:04:53 2013 -0600

    target-xtensa: fix search_pc for the last TB opcode
    
    Zero out tcg_ctx.gen_opc_instr_start for instructions representing the
    last guest opcode in the TB.
    
    Cc: qemu-stable@xxxxxxxxxx
    Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
    Signed-off-by: Blue Swirl <blauwirbel@xxxxxxxxx>
    (cherry picked from commit 36f25d2537c40c6c47f4abee5d31a24863d1adf7)
    
    *modified to use older global version of gen_opc_instr_start
    
    Signed-off-by: Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
---
 target-xtensa/translate.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

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;
     }
--
generated by git-patchbot for /home/xen/git/qemu-upstream-unstable.git

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.