diff --git a/target-sparc/translate.c b/target-sparc/translate.c index fce4de086d52c4ba77c48178b0d77ea1b46366ea..5d87ef8d5dfece1d3e20b026d2d1a4a8433c0024 100644 --- a/target-sparc/translate.c +++ b/target-sparc/translate.c @@ -790,8 +790,8 @@ static inline void gen_op_smul_T1_T0(void) r_temp = tcg_temp_new(TCG_TYPE_I64); r_temp2 = tcg_temp_new(TCG_TYPE_I64); - tcg_gen_ext32s_i64(r_temp, cpu_T[1]); - tcg_gen_ext32s_i64(r_temp2, cpu_T[0]); + tcg_gen_ext_i32_i64(r_temp, cpu_T[1]); + tcg_gen_ext_i32_i64(r_temp2, cpu_T[0]); tcg_gen_mul_i64(r_temp2, r_temp, r_temp2); tcg_gen_shri_i64(r_temp, r_temp2, 32);