[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 02/70] tcg: Split out tcg_raise_tb_overflow
From: |
Richard Henderson |
Subject: |
[PATCH v3 02/70] tcg: Split out tcg_raise_tb_overflow |
Date: |
Sun, 7 Feb 2021 18:36:44 -0800 |
Allow other places in tcg to restart with a smaller tb.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
tcg/tcg.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/tcg/tcg.c b/tcg/tcg.c
index 63a12b197b..bbe3dcee03 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -346,6 +346,12 @@ static void set_jmp_reset_offset(TCGContext *s, int which)
s->tb_jmp_reset_offset[which] = tcg_current_code_size(s);
}
+/* Signal overflow, starting over with fewer guest insns. */
+static void QEMU_NORETURN tcg_raise_tb_overflow(TCGContext *s)
+{
+ siglongjmp(s->jmp_trans, -2);
+}
+
#define C_PFX1(P, A) P##A
#define C_PFX2(P, A, B) P##A##_##B
#define C_PFX3(P, A, B, C) P##A##_##B##_##C
@@ -1310,8 +1316,7 @@ static TCGTemp *tcg_temp_alloc(TCGContext *s)
int n = s->nb_temps++;
if (n >= TCG_MAX_TEMPS) {
- /* Signal overflow, starting over with fewer guest insns. */
- siglongjmp(s->jmp_trans, -2);
+ tcg_raise_tb_overflow(s);
}
return memset(&s->temps[n], 0, sizeof(TCGTemp));
}
--
2.25.1
- [PATCH v3 00/70] TCI fixes and cleanups, Richard Henderson, 2021/02/07
- [PATCH v3 01/70] gdbstub: Fix handle_query_xfer_auxv, Richard Henderson, 2021/02/07
- [PATCH v3 02/70] tcg: Split out tcg_raise_tb_overflow,
Richard Henderson <=
- [PATCH v3 04/70] tcg/tci: Merge identical cases in generation, Richard Henderson, 2021/02/07
- [PATCH v3 03/70] tcg: Manage splitwx in tc_ptr_to_region_tree by hand, Richard Henderson, 2021/02/07
- [PATCH v3 05/70] tcg/tci: Remove tci_read_r8, Richard Henderson, 2021/02/07
- [PATCH v3 06/70] tcg/tci: Remove tci_read_r8s, Richard Henderson, 2021/02/07
- [PATCH v3 07/70] tcg/tci: Remove tci_read_r16, Richard Henderson, 2021/02/07
- [PATCH v3 08/70] tcg/tci: Remove tci_read_r16s, Richard Henderson, 2021/02/07
- [PATCH v3 09/70] tcg/tci: Remove tci_read_r32, Richard Henderson, 2021/02/07
- [PATCH v3 13/70] tcg/tci: Merge extension operations, Richard Henderson, 2021/02/07
- [PATCH v3 14/70] tcg/tci: Remove ifdefs for TCG_TARGET_HAS_ext32[us]_i64, Richard Henderson, 2021/02/07
- [PATCH v3 10/70] tcg/tci: Remove tci_read_r32s, Richard Henderson, 2021/02/07