[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 22/23] target-sparc: Fall through from not-taken tra
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH 22/23] target-sparc: Fall through from not-taken trap |
Date: |
Fri, 5 Oct 2012 16:55:09 -0700 |
Now that we've cleaned up global temporary allocation, we can
continue translating the fallthru path of a conditional trap.
Signed-off-by: Richard Henderson <address@hidden>
---
target-sparc/translate.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/target-sparc/translate.c b/target-sparc/translate.c
index 48c245e..a7f6407 100644
--- a/target-sparc/translate.c
+++ b/target-sparc/translate.c
@@ -2573,13 +2573,15 @@ static void disas_sparc_insn(DisasContext * dc,
unsigned int insn)
gen_helper_raise_exception(cpu_env, trap);
tcg_temp_free_i32(trap);
- if (cond != 8) {
+ if (cond == 8) {
+ /* An unconditional trap ends the TB. */
+ dc->is_br = 1;
+ goto jmp_insn;
+ } else {
+ /* A conditional trap falls through to the next insn. */
gen_set_label(l1);
- gen_op_next_insn();
- tcg_gen_exit_tb(0);
+ break;
}
- dc->is_br = 1;
- goto jmp_insn;
} else if (xop == 0x28) {
rs1 = GET_FIELD(insn, 13, 17);
switch(rs1) {
--
1.7.11.4
- [Qemu-devel] [PATCH 18/23] target-sparc: Move taddcctv and tsubcctv out of line, (continued)
- [Qemu-devel] [PATCH 18/23] target-sparc: Move taddcctv and tsubcctv out of line, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 04/23] target-sparc: Tidy flush_cond interface, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 16/23] target-sparc: Move sdivx and udivx out of line, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 14/23] target-sparc: Use DisasCompare and movcond in MOVR, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 15/23] target-sparc: Use movcond in gen_generic_branch, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 21/23] target-sparc: Cleanup "global" temporary allocation, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 23/23] target-sparc: Optimize conditionals using SUBCC, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 22/23] target-sparc: Fall through from not-taken trap,
Richard Henderson <=
- [Qemu-devel] [PATCH 19/23] target-sparc: Use movcond in mulscc, Richard Henderson, 2012/10/05
- [Qemu-devel] [PATCH 20/23] target-sparc: Use movcond for FMOV*R, Richard Henderson, 2012/10/05
- Re: [Qemu-devel] [PATCH 00/23] target-sparc comparison improvements, Blue Swirl, 2012/10/07