Commit 233a08fde8 for qemu.org
commit 233a08fde87e2dbd1dd4948032e54ed764a02d41
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Fri Aug 28 05:27:00 2026 -0700
target/riscv: Use tcg_gen_lea_tl for SH*ADD
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
diff --git a/target/riscv/tcg/insn_trans/trans_rvb.c.inc b/target/riscv/tcg/insn_trans/trans_rvb.c.inc
index 3e74be223b..82e715c7b7 100644
--- a/target/riscv/tcg/insn_trans/trans_rvb.c.inc
+++ b/target/riscv/tcg/insn_trans/trans_rvb.c.inc
@@ -336,10 +336,7 @@ static bool trans_orc_b(DisasContext *ctx, arg_orc_b *a)
#define GEN_SHADD(SHAMT) \
static void gen_sh##SHAMT##add(TCGv ret, TCGv arg1, TCGv arg2) \
{ \
- TCGv t = tcg_temp_new(); \
- \
- tcg_gen_shli_tl(t, arg1, SHAMT); \
- tcg_gen_add_tl(ret, t, arg2); \
+ tcg_gen_lea_tl(ret, arg2, arg1, SHAMT, 0); \
}
GEN_SHADD(1)