qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 24/67] target/arm: Pass fpstatus to vfp_sqrt*


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH 24/67] target/arm: Pass fpstatus to vfp_sqrt*
Date: Thu, 5 Dec 2024 22:40:33 +0100
User-agent: Mozilla Thunderbird

On 5/12/24 22:38, Peter Maydell wrote:
On Thu, 5 Dec 2024 at 21:21, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:

On 1/12/24 16:05, Richard Henderson wrote:
Pass fpstatus not env, like most other fp helpers.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
   target/arm/helper.h            |  6 +++---
   target/arm/tcg/translate-a64.c | 15 +++++++--------
   target/arm/tcg/translate-vfp.c |  6 +++---
   target/arm/vfp_helper.c        | 12 ++++++------
   4 files changed, 19 insertions(+), 20 deletions(-)


@@ -10403,6 +10401,7 @@ static void disas_simd_two_reg_misc(DisasContext *s, 
uint32_t insn)
               handle_2misc_fcmp_zero(s, opcode, false, u, is_q, size, rn, rd);
               return;
           case 0x7f: /* FSQRT */
+            need_fpstatus = true;

Should this change be in a different patch?

No, this is correct. It tells the common code in this function
that it needs to set up tcg_fpstatus, because in the next change
in a later switch() in this function:

                  case 0x7f: /* FSQRT */
-                    gen_helper_vfp_sqrts(tcg_res, tcg_op, tcg_env);
+                    gen_helper_vfp_sqrts(tcg_res, tcg_op, tcg_fpstatus);
                      break;

we will now want to use it.

Oh now I see, not obvious. Thanks for the explanation!

Phil.



reply via email to

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