tcg: Silence ubsan error on tcg_splitwx_diff causing overflow

UBSAN complains:
runtime error: addition of unsigned offset to 0x7bc06e1f5000
overflowed to 0x7bc02e1f5000

Change tcg_splitwx_diff to ptrdiff_t and silence the error.

Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@mailo.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20260605132539.2775364-1-farosas@suse.de>
This commit is contained in:
Fabiano Rosas
2026-06-05 10:25:39 -03:00
committed by Richard Henderson
parent 193963218a
commit f6ff5ec21e
2 changed files with 2 additions and 2 deletions

View File

@@ -447,7 +447,7 @@ static inline bool temp_readonly(TCGTemp *ts)
extern __thread TCGContext *tcg_ctx; extern __thread TCGContext *tcg_ctx;
extern const void *tcg_code_gen_epilogue; extern const void *tcg_code_gen_epilogue;
extern uintptr_t tcg_splitwx_diff; extern ptrdiff_t tcg_splitwx_diff;
extern TCGv_env tcg_env; extern TCGv_env tcg_env;
bool in_code_gen_buffer(const void *p); bool in_code_gen_buffer(const void *p);

View File

@@ -244,7 +244,7 @@ unsigned int tcg_cur_ctxs;
unsigned int tcg_max_ctxs; unsigned int tcg_max_ctxs;
TCGv_env tcg_env; TCGv_env tcg_env;
const void *tcg_code_gen_epilogue; const void *tcg_code_gen_epilogue;
uintptr_t tcg_splitwx_diff; ptrdiff_t tcg_splitwx_diff;
#ifndef CONFIG_TCG_INTERPRETER #ifndef CONFIG_TCG_INTERPRETER
tcg_prologue_fn *tcg_qemu_tb_exec; tcg_prologue_fn *tcg_qemu_tb_exec;