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]>


Reply via email to