On 30/9/26 12:34, Yonggang Luo wrote:
Fixes: acd2b7a2f19 target/hexagon: Implement wait helper
Not sure if this one or 40085901dbe or another one.
DisasContextBase::pc_next is of type vaddr, which expands
to uint32_t on hexagon. Pierrick has a better view on which
type is better here.
There is still inconsistency to clean (later), up to the
maintainers:
target/hexagon/genptr.c:429: tcg_gen_movi_tl(dest,
ctx->base.pc_next);
target/hexagon/genptr.c:469: TCGv pc =
tcg_constant_tl(ctx->base.pc_next);
target/hexagon/translate.c:251: target_ulong fail_pc =
ctx->base.pc_next + nwords * sizeof(uint32_t);
target/hexagon/translate.c:580: target_ulong next_PC =
ctx->base.pc_next + pkt->encod_pkt_size_in_bytes;
target/hexagon/translate.c:1383:
tcg_gen_movi_tl(hex_gpr[HEX_REG_PC], ctx->base.pc_next);
Signed-off-by: Yonggang Luo <[email protected]>
---
target/hexagon/gen_tcg_sys.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target/hexagon/gen_tcg_sys.h b/target/hexagon/gen_tcg_sys.h
index af5032214c..faec55f502 100644
--- a/target/hexagon/gen_tcg_sys.h
+++ b/target/hexagon/gen_tcg_sys.h
@@ -80,7 +80,7 @@
#define fGEN_TCG_Y2_wait(SHORTCODE) \
do { \
RsV = RsV; \
- gen_helper_wait(tcg_env, tcg_constant_tl(ctx->pkt.pc)); \
+ gen_helper_wait(tcg_env, tcg_constant_i32(ctx->pkt.pc)); \
} while (0)
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>