qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 01/27] target/s390x: Use tcg_constant_* in local contexts


From: Thomas Huth
Subject: Re: [PATCH v3 01/27] target/s390x: Use tcg_constant_* in local contexts
Date: Mon, 20 Feb 2023 18:49:31 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0

On 09/01/2023 21.07, Richard Henderson wrote:
Replace tcg_const_* with tcg_constant_* in contexts
where the free to remove is nearby.

Reviewed-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
  target/s390x/tcg/translate.c | 416 +++++++++++++----------------------
  1 file changed, 149 insertions(+), 267 deletions(-)
...
@@ -2141,24 +2106,22 @@ static DisasJumpType op_clclu(DisasContext *s, DisasOps 
*o)
          return DISAS_NORETURN;
      }
- t1 = tcg_const_i32(r1);
-    t3 = tcg_const_i32(r3);
+    t1 = tcg_constant_i32(r1);
+    t3 = tcg_constant_i32(r3);
      gen_helper_clclu(cc_op, cpu_env, t1, o->in2, t3);
-    tcg_temp_free_i32(t1);
-    tcg_temp_free_i32(t3);
      set_cc_static(s);
      return DISAS_NEXT;
  }
static DisasJumpType op_clm(DisasContext *s, DisasOps *o)
  {
-    TCGv_i32 m3 = tcg_const_i32(get_field(s, m3));
+    TCGv_i32 m3 = tcg_constant_i32(get_field(s, m3));
      TCGv_i32 t1 = tcg_temp_new_i32();
+
      tcg_gen_extrl_i64_i32(t1, o->in1);
      gen_helper_clm(cc_op, cpu_env, t1, m3, o->in2);
      set_cc_static(s);
      tcg_temp_free_i32(t1);
-    tcg_temp_free_i32(m3);
      return DISAS_NEXT;
  }
@@ -2217,8 +2180,8 @@ static DisasJumpType op_cdsg(DisasContext *s, DisasOps *o) /* Note that R1:R1+1 = expected value and R3:R3+1 = new value. */
      addr = get_address(s, 0, b2, d2);
-    t_r1 = tcg_const_i32(r1);
-    t_r3 = tcg_const_i32(r3);
+    t_r1 = tcg_constant_i32(r1);
+    t_r3 = tcg_constant_i32(r3);
      if (!(tb_cflags(s->base.tb) & CF_PARALLEL)) {
          gen_helper_cdsg(cpu_env, addr, t_r1, t_r3);
      } else if (HAVE_CMPXCHG128) {

This seems to have a conflict with another patch of yours ("Use tcg_gen_atomic_cmpxchg_i128 for CDSG") which has been merged first.

Could you please rebase and send a v4?

 Thanks,
  Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]