On Wed, 3 May 2023 at 08:15, Richard Henderson
<[email protected]> wrote:
>
> Emphasize that the constant is unsigned.
>
> Signed-off-by: Richard Henderson <[email protected]>
> ---
> tcg/sparc64/tcg-target.c.inc | 24 ++++++++++--------------
> 1 file changed, 10 insertions(+), 14 deletions(-)
>
> diff --git a/tcg/sparc64/tcg-target.c.inc b/tcg/sparc64/tcg-target.c.inc
> index 2e6127d506..e244209890 100644
> --- a/tcg/sparc64/tcg-target.c.inc
> +++ b/tcg/sparc64/tcg-target.c.inc
> @@ -399,22 +399,18 @@ static void tcg_out_sethi(TCGContext *s, TCGReg ret,
> uint32_t arg)
> tcg_out32(s, SETHI | INSN_RD(ret) | ((arg & 0xfffffc00) >> 10));
> }
>
> +/* A 13-bit constant sign-extended to 64 bits. */
This should have been in the previous patch, I think ?
> static void tcg_out_movi_s13(TCGContext *s, TCGReg ret, int32_t arg)
> {
> tcg_out_arithi(s, ret, TCG_REG_G0, arg, ARITH_OR);
> }
>
> -static void tcg_out_movi_imm32(TCGContext *s, TCGReg ret, int32_t arg)
> +/* A 32-bit constant zero-extended to 64 bits. */
> +static void tcg_out_movi_u32(TCGContext *s, TCGReg ret, uint32_t arg)
> {
> - if (check_fit_i32(arg, 13)) {
> - /* A 13-bit constant sign-extended to 64-bits. */
> - tcg_out_movi_s13(s, ret, arg);
> - } else {
> - /* A 32-bit constant zero-extended to 64 bits. */
> - tcg_out_sethi(s, ret, arg);
> - if (arg & 0x3ff) {
> - tcg_out_arithi(s, ret, ret, arg & 0x3ff, ARITH_OR);
> - }
> + tcg_out_sethi(s, ret, arg);
> + if (arg & 0x3ff) {
> + tcg_out_arithi(s, ret, ret, arg & 0x3ff, ARITH_OR);
> }
> }
More code changes in a patch that says it's a rename-only.
-- PMM