fpu: Drop parts_sqrt
Use parts{64,128}_sqrt at each call site. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Richard Henderson committed
Apr 26, 2026 at 19:53 UTC
9ee05f6008d66ef469388caaf3749942d5a1ca66
1 file changed
+7
-13
fpu/softfloat.c
+7
-13
@@ -779,12 +779,6 @@ static float128 QEMU_FLATTEN float128_pack_raw(const FloatParts128 *p)
779
FloatParts128 *: parts128_##NAME, \
780
FloatParts256 *: parts256_##NAME)
781
782
-static void parts64_sqrt(FloatParts64 *a, float_status *s, const FloatFmt *f);
783
-static void parts128_sqrt(FloatParts128 *a, float_status *s, const FloatFmt *f);
784
-
785
-#define parts_sqrt(A, S, F) \
786
- PARTS_GENERIC_64_128(sqrt, A)(A, S, F)
787
-
782
static bool parts64_round_to_int_normal(FloatParts64 *a, FloatRoundMode rm,
783
int scale, int frac_size);
784
static bool parts128_round_to_int_normal(FloatParts128 *a, FloatRoundMode r,
@@ -4757,7 +4751,7 @@ float16 QEMU_FLATTEN float16_sqrt(float16 a, float_status *status)
4751
FloatParts64 p;
4752
4753
float16_unpack_canonical(&p, a, status);
4760
- parts_sqrt(&p, status, &float16_params);
4754
+ parts64_sqrt(&p, status, &float16_params);
4755
return float16_round_pack_canonical(&p, status);
4756
}
4757
@@ -4767,7 +4761,7 @@ soft_f32_sqrt(float32 a, float_status *status)
4761
FloatParts64 p;
4762
4763
float32_unpack_canonical(&p, a, status);
4770
- parts_sqrt(&p, status, &float32_params);
4764
+ parts64_sqrt(&p, status, &float32_params);
4765
return float32_round_pack_canonical(&p, status);
4766
}
4767
@@ -4777,7 +4771,7 @@ soft_f64_sqrt(float64 a, float_status *status)
4771
FloatParts64 p;
4772
4773
float64_unpack_canonical(&p, a, status);
4780
- parts_sqrt(&p, status, &float64_params);
4774
+ parts64_sqrt(&p, status, &float64_params);
4775
return float64_round_pack_canonical(&p, status);
4776
}
4777
@@ -4840,7 +4834,7 @@ float64 float64r32_sqrt(float64 a, float_status *status)
4834
FloatParts64 p;
4835
4836
float64_unpack_canonical(&p, a, status);
4843
- parts_sqrt(&p, status, &float64_params);
4837
+ parts64_sqrt(&p, status, &float64_params);
4838
return float64r32_round_pack_canonical(&p, status);
4839
}
4840
@@ -4849,7 +4843,7 @@ bfloat16 QEMU_FLATTEN bfloat16_sqrt(bfloat16 a, float_status *status)
4843
FloatParts64 p;
4844
4845
bfloat16_unpack_canonical(&p, a, status);
4852
- parts_sqrt(&p, status, &bfloat16_params);
4846
+ parts64_sqrt(&p, status, &bfloat16_params);
4847
return bfloat16_round_pack_canonical(&p, status);
4848
}
4849
@@ -4858,7 +4852,7 @@ float128 QEMU_FLATTEN float128_sqrt(float128 a, float_status *status)
4852
FloatParts128 p;
4853
4854
float128_unpack_canonical(&p, a, status);
4861
- parts_sqrt(&p, status, &float128_params);
4855
+ parts128_sqrt(&p, status, &float128_params);
4856
return float128_round_pack_canonical(&p, status);
4857
}
4858
@@ -4869,7 +4863,7 @@ floatx80 floatx80_sqrt(floatx80 a, float_status *s)
4863
if (!floatx80_unpack_canonical(&p, a, s)) {
4864
return floatx80_default_nan(s);
4865
}
4872
- parts_sqrt(&p, s, &floatx80_params[s->floatx80_rounding_precision]);
4866
+ parts128_sqrt(&p, s, &floatx80_params[s->floatx80_rounding_precision]);
4867
return floatx80_round_pack_canonical(&p, s);
4868
}
4869