On Wed, Oct 21, 2026 at 10:26 AM Richard Henderson
<[email protected]> wrote:
>
> Signed-off-by: Richard Henderson <[email protected]>
> ---
>  include/tcg/tcg-op-common.h  | 20 +-------------------
>  include/tcg/tcg-op-def.h.inc |  1 +
>  tcg/tcg-op.c                 | 21 ++++++++++-----------
>  3 files changed, 12 insertions(+), 30 deletions(-)
>
> diff --git a/include/tcg/tcg-op-common.h b/include/tcg/tcg-op-common.h
> index d0d508ced6..469b925fe0 100644
> --- a/include/tcg/tcg-op-common.h
> +++ b/include/tcg/tcg-op-common.h
> @@ -142,7 +142,6 @@ void tcg_gen_dup_i32(unsigned vece, TCGv_i32 out, 
> TCGv_i32 in);
>
>  void tcg_gen_st8_i32(TCGv_i32 arg1, TCGv_ptr arg2, tcg_target_long offset);
>  void tcg_gen_st16_i32(TCGv_i32 arg1, TCGv_ptr arg2, tcg_target_long offset);
> -void tcg_gen_st_i32(TCGv_i32 arg1, TCGv_ptr arg2, tcg_target_long offset);
>
>  /* 64 bit ops */
>
> @@ -166,7 +165,6 @@ void tcg_gen_st32_i64(TCGv_i64 arg1, TCGv_ptr arg2, 
> tcg_target_long offset);
>
>  void tcg_gen_ld32u_i64(TCGv_i64 ret, TCGv_ptr arg2, tcg_target_long offset);
>  void tcg_gen_ld32s_i64(TCGv_i64 ret, TCGv_ptr arg2, tcg_target_long offset);
> -void tcg_gen_st_i64(TCGv_i64 arg1, TCGv_ptr arg2, tcg_target_long offset);
>
>  /* Size changing operations.  */
>
> @@ -352,24 +350,11 @@ void tcg_gen_stl_vec(TCGv_vec r, TCGv_ptr base, TCGArg 
> offset, TCGType t);
>
>  /* Host pointer ops */
>
> -#if UINTPTR_MAX == UINT32_MAX
> -# define PTR  i32
> -# define NAT  TCGv_i32
> -#else
> -# define PTR  i64
> -# define NAT  TCGv_i64
> -#endif
> -
>  TCGv_ptr tcg_constant_ptr_int(intptr_t x);
>  #define tcg_constant_ptr(X)  tcg_constant_ptr_int((intptr_t)(X))
>
>  QEMU_ARG_NONNULL void tcg_gen_ld_ptr(TCGv_ptr r, TCGv_ptr a, intptr_t o);
> -
> -static inline void tcg_gen_st_ptr(TCGv_ptr r, TCGv_ptr a, intptr_t o)
> -{
> -    glue(tcg_gen_st_, PTR)((NAT)r, a, o);
> -}
> -
> +QEMU_ARG_NONNULL void tcg_gen_st_ptr(TCGv_ptr r, TCGv_ptr a, intptr_t o);
>  QEMU_ARG_NONNULL void tcg_gen_discard_ptr(TCGv_ptr a);
>  QEMU_ARG_NONNULL void tcg_gen_add_ptr(TCGv_ptr r, TCGv_ptr a, TCGv_ptr b);
>  QEMU_ARG_NONNULL void tcg_gen_addi_ptr(TCGv_ptr r, TCGv_ptr a, intptr_t b);
> @@ -382,7 +367,4 @@ QEMU_ARG_NONNULL void tcg_gen_trunc_i64_ptr(TCGv_ptr r, 
> TCGv_i64 a);
>  QEMU_ARG_NONNULL void tcg_gen_extu_ptr_i64(TCGv_i64 r, TCGv_ptr a);
>  QEMU_ARG_NONNULL void tcg_gen_trunc_ptr_i32(TCGv_i32 r, TCGv_ptr a);
>
> -#undef PTR
> -#undef NAT
> -
>  #endif /* TCG_TCG_OP_COMMON_H */
> diff --git a/include/tcg/tcg-op-def.h.inc b/include/tcg/tcg-op-def.h.inc
> index 98a07a70f0..514967f91d 100644
> --- a/include/tcg/tcg-op-def.h.inc
> +++ b/include/tcg/tcg-op-def.h.inc
> @@ -70,6 +70,7 @@ DEF3(shr, TCGV, TCGV, TCGV)
>  DEF3(shri, TCGV, TCGV, TINT)
>  DEF3(smax, TCGV, TCGV, TCGV)
>  DEF3(smin, TCGV, TCGV, TCGV)
> +DEF3(st, TCGV, TCGv_ptr, tcg_target_long)
>  DEF3(sub, TCGV, TCGV, TCGV)
>  DEF3(subi, TCGV, TCGV, TINT)
>  DEF6(sub2, TCGV, TCGV, TCGV, TCGV, TCGV, TCGV)
> diff --git a/tcg/tcg-op.c b/tcg/tcg-op.c
> index f1c33afc02..68e31fe5ca 100644
> --- a/tcg/tcg-op.c
> +++ b/tcg/tcg-op.c
> @@ -1251,6 +1251,11 @@ void tcg_gen_smin(TCGType type, TCGTemp *dst, TCGTemp 
> *src1, TCGTemp *src2)
>      }
>  }
>
> +void tcg_gen_st(TCGType type, TCGTemp *dst, TCGTemp *base, tcg_target_long 
> ofs)
> +{

Naming the value we're storing `dst` is kind of odd. Probably a
copy-n-paste artifact.

Same applies to 93 and 94.

> +    tcg_gen_op_tti(INDEX_op_st, type, dst, base, ofs);
> +}

Reply via email to