aboutsummaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2023-11-06 11:39:19 -0800
committerRichard Henderson <richard.henderson@linaro.org>2024-02-03 23:43:50 +0000
commit50280618d9ae434564a2e321cfb5b248309bed70 (patch)
tree2caffeb3d75c1f0f059ff0f8a46c55556f6e638f /target
parent2358cf77d1a8a752aff5917892c4699b0ba0601e (diff)
downloadqemu-50280618d9ae434564a2e321cfb5b248309bed70.zip
qemu-50280618d9ae434564a2e321cfb5b248309bed70.tar.gz
qemu-50280618d9ae434564a2e321cfb5b248309bed70.tar.bz2
target/sparc: Use TCG_COND_TSTEQ in gen_op_mulscc
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target')
-rw-r--r--target/sparc/translate.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target/sparc/translate.c b/target/sparc/translate.c
index 7df6f83..d9304a5 100644
--- a/target/sparc/translate.c
+++ b/target/sparc/translate.c
@@ -488,6 +488,7 @@ static void gen_op_subccc(TCGv dst, TCGv src1, TCGv src2)
static void gen_op_mulscc(TCGv dst, TCGv src1, TCGv src2)
{
TCGv zero = tcg_constant_tl(0);
+ TCGv one = tcg_constant_tl(1);
TCGv t_src1 = tcg_temp_new();
TCGv t_src2 = tcg_temp_new();
TCGv t0 = tcg_temp_new();
@@ -499,8 +500,7 @@ static void gen_op_mulscc(TCGv dst, TCGv src1, TCGv src2)
* if (!(env->y & 1))
* src2 = 0;
*/
- tcg_gen_andi_tl(t0, cpu_y, 0x1);
- tcg_gen_movcond_tl(TCG_COND_EQ, t_src2, t0, zero, zero, t_src2);
+ tcg_gen_movcond_tl(TCG_COND_TSTEQ, t_src2, cpu_y, one, zero, t_src2);
/*
* b2 = src1 & 1;