Change requested in launchpad bug #1288352
[packages/centos6/qemu.git] / 0048-target-xtensa-don-t-emit-extra-tcg_gen_goto_tb.patch
1 From ba9c2acb955f0453ae80077a791a4d1c27b5d6e6 Mon Sep 17 00:00:00 2001
2 From: Max Filippov <jcmvbkbc@gmail.com>
3 Date: Fri, 21 Sep 2012 02:59:50 +0400
4 Subject: [PATCH] target-xtensa: don't emit extra tcg_gen_goto_tb
5
6 Unconditional gen_check_loop_end at the end of disas_xtensa_insn
7 can emit tcg_gen_goto_tb with slot id already used in the TB (e.g. when
8 TB ends at LEND with a branch).
9
10 Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
11 Cc: qemu-stable <qemu-stable@nongnu.org>
12 Signed-off-by: malc <av1474@comtv.ru>
13 Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
14 ---
15  target-xtensa/translate.c | 4 +++-
16  1 file changed, 3 insertions(+), 1 deletion(-)
17
18 diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c
19 index 7a1c528..b6643eb 100644
20 --- a/target-xtensa/translate.c
21 +++ b/target-xtensa/translate.c
22 @@ -2520,7 +2520,9 @@ static void disas_xtensa_insn(DisasContext *dc)
23          break;
24      }
25  
26 -    gen_check_loop_end(dc, 0);
27 +    if (dc->is_jmp == DISAS_NEXT) {
28 +        gen_check_loop_end(dc, 0);
29 +    }
30      dc->pc = dc->next_pc;
31  
32      return;
33 -- 
34 1.7.12.1
35