qemu-devel
[Top][All Lists]
Advanced

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

[PATCH 19/22] target/arm: Use float*_maybe_ah_chs in sve_ftssel_*


From: Richard Henderson
Subject: [PATCH 19/22] target/arm: Use float*_maybe_ah_chs in sve_ftssel_*
Date: Mon, 27 Jan 2025 15:26:01 -0800

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 target/arm/tcg/sve_helper.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/target/arm/tcg/sve_helper.c b/target/arm/tcg/sve_helper.c
index 3f38e07829..a2ff3b7f11 100644
--- a/target/arm/tcg/sve_helper.c
+++ b/target/arm/tcg/sve_helper.c
@@ -2563,8 +2563,8 @@ void HELPER(sve_ftssel_h)(void *vd, void *vn, void *vm, 
uint32_t desc)
         if (mm & 1) {
             nn = float16_one;
         }
-        if ((mm & 2) && !(fpcr_ah && float16_is_any_nan(nn))) {
-            nn ^= (1 << 15);
+        if (mm & 2) {
+            nn = float16_maybe_ah_chs(nn, fpcr_ah);
         }
         d[i] = nn;
     }
@@ -2581,8 +2581,8 @@ void HELPER(sve_ftssel_s)(void *vd, void *vn, void *vm, 
uint32_t desc)
         if (mm & 1) {
             nn = float32_one;
         }
-        if ((mm & 2) && !(fpcr_ah && float32_is_any_nan(nn))) {
-            nn ^= (1U << 31);
+        if (mm & 2) {
+            nn = float32_maybe_ah_chs(nn, fpcr_ah);
         }
         d[i] = nn;
     }
@@ -2599,8 +2599,8 @@ void HELPER(sve_ftssel_d)(void *vd, void *vn, void *vm, 
uint32_t desc)
         if (mm & 1) {
             nn = float64_one;
         }
-        if ((mm & 2) && !(fpcr_ah && float64_is_any_nan(nn))) {
-            nn ^= (1ULL << 63);
+        if (mm & 2) {
+            nn = float64_maybe_ah_chs(nn, fpcr_ah);
         }
         d[i] = nn;
     }
-- 
2.43.0




reply via email to

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