Commit d22d7289 authored by Richard Sandiford's avatar Richard Sandiford Committed by Aurelien Jarno
Browse files

Fix operands of RECIP2.S and RECIP2.PS



Read the second input operand of RECIP2.S and RECIP2.PS from FT rather
than FD.  RECIP2.D is already correct.
Signed-off-by: default avatarRichard Sandiford <rdsandiford@googlemail.com>
Signed-off-by: default avatarAurelien Jarno <aurelien@aurel32.net>
parent d03c98d8
...@@ -6805,7 +6805,7 @@ static void gen_farith (DisasContext *ctx, enum fopcode op1, ...@@ -6805,7 +6805,7 @@ static void gen_farith (DisasContext *ctx, enum fopcode op1,
TCGv_i32 fp1 = tcg_temp_new_i32(); TCGv_i32 fp1 = tcg_temp_new_i32();
gen_load_fpr32(fp0, fs); gen_load_fpr32(fp0, fs);
gen_load_fpr32(fp1, fd); gen_load_fpr32(fp1, ft);
gen_helper_float_recip2_s(fp0, fp0, fp1); gen_helper_float_recip2_s(fp0, fp0, fp1);
tcg_temp_free_i32(fp1); tcg_temp_free_i32(fp1);
gen_store_fpr32(fp0, fd); gen_store_fpr32(fp0, fd);
...@@ -7543,7 +7543,7 @@ static void gen_farith (DisasContext *ctx, enum fopcode op1, ...@@ -7543,7 +7543,7 @@ static void gen_farith (DisasContext *ctx, enum fopcode op1,
TCGv_i64 fp1 = tcg_temp_new_i64(); TCGv_i64 fp1 = tcg_temp_new_i64();
gen_load_fpr64(ctx, fp0, fs); gen_load_fpr64(ctx, fp0, fs);
gen_load_fpr64(ctx, fp1, fd); gen_load_fpr64(ctx, fp1, ft);
gen_helper_float_recip2_ps(fp0, fp0, fp1); gen_helper_float_recip2_ps(fp0, fp0, fp1);
tcg_temp_free_i64(fp1); tcg_temp_free_i64(fp1);
gen_store_fpr64(ctx, fp0, fd); gen_store_fpr64(ctx, fp0, fd);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment