[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 20/22] target/i386: Use gen_jmp_rel for DISAS_TOO_MANY
From: |
Richard Henderson |
Subject: |
[PATCH 20/22] target/i386: Use gen_jmp_rel for DISAS_TOO_MANY |
Date: |
Mon, 22 Aug 2022 16:33:16 -0700 |
With gen_jmp_rel, we may chain between two translation blocks
which may only be separated because of TB size limits.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
target/i386/tcg/translate.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c
index 67c803263b..846040c1ab 100644
--- a/target/i386/tcg/translate.c
+++ b/target/i386/tcg/translate.c
@@ -8627,6 +8627,9 @@ static void i386_tr_tb_stop(DisasContextBase *dcbase,
CPUState *cpu)
case DISAS_NORETURN:
break;
case DISAS_TOO_MANY:
+ gen_update_cc_op(dc);
+ gen_jmp_rel(dc, MO_32, 0, 0);
+ break;
case DISAS_EOB_NEXT:
gen_update_cc_op(dc);
gen_update_eip_cur(dc);
--
2.34.1
- [PATCH 06/22] target/i386: Introduce DISAS_EOB*, (continued)
- [PATCH 06/22] target/i386: Introduce DISAS_EOB*, Richard Henderson, 2022/08/22
- [PATCH 07/22] target/i386: Use DISAS_EOB* in gen_movl_seg_T0, Richard Henderson, 2022/08/22
- [PATCH 08/22] target/i386: Use DISAS_EOB_NEXT, Richard Henderson, 2022/08/22
- [PATCH 10/22] target/i386: Create cur_insn_len, cur_insn_len_i32, Richard Henderson, 2022/08/22
- [PATCH 09/22] target/i386: USe DISAS_EOB_ONLY, Richard Henderson, 2022/08/22
- [PATCH 13/22] target/i386: Truncate values for lcall_real to i32, Richard Henderson, 2022/08/22
- [PATCH 15/22] target/i386: Use DISAS_TOO_MANY to exit after gen_io_start, Richard Henderson, 2022/08/22
- [PATCH 16/22] target/i386: Create gen_jmp_rel, Richard Henderson, 2022/08/22
- [PATCH 17/22] target/i386: Use gen_jmp_rel for loop and jecxz insns, Richard Henderson, 2022/08/22
- [PATCH 11/22] target/i386: Remove cur_eip, next_eip arguments to gen_repz*, Richard Henderson, 2022/08/22
- [PATCH 20/22] target/i386: Use gen_jmp_rel for DISAS_TOO_MANY,
Richard Henderson <=
- [PATCH 12/22] target/i386: Introduce DISAS_JUMP, Richard Henderson, 2022/08/22
- [PATCH 19/22] target/i386: Use gen_jmp_rel for gen_repz*, Richard Henderson, 2022/08/22
- [PATCH 18/22] target/i386: Use gen_jmp_rel for gen_jcc, Richard Henderson, 2022/08/22
- [PATCH 22/22] target/i386: Enable TARGET_TB_PCREL, Richard Henderson, 2022/08/22
- [PATCH 21/22] target/i386: Create gen_eip_cur, Richard Henderson, 2022/08/22
- [PATCH 14/22] target/i386: Create eip_next_*, Richard Henderson, 2022/08/22