@samitouri / QOSamiQemu / commits / 2262e3024f

fpu: Inline bfloat16_unpack_raw into callers

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

Richard Henderson committed Apr 25, 2026 at 18:59 UTC 2262e3024f6cca1d894e6548a7d5dd0693c7d952
1 file changed +3 -10
fpu/softfloat.c
+3 -10
@@ -646,11 +646,6 @@ static FloatParts64 unpack_raw64(const FloatFmt *fmt, uint64_t raw)
646 };
647 }
648
649 -static void QEMU_FLATTEN bfloat16_unpack_raw(FloatParts64 *p, bfloat16 f)
650 -{
651 - *p = unpack_raw64(&bfloat16_params, f);
652 -}
653 -
649 static void QEMU_FLATTEN float32_unpack_raw(FloatParts64 *p, float32 f)
650 {
651 *p = unpack_raw64(&float32_params, f);
@@ -1490,7 +1485,7 @@ static FloatParts64 float16_unpack_canonical(float16 f, float_status *s)
1485 static void bfloat16_unpack_canonical(FloatParts64 *p, bfloat16 f,
1486 float_status *s)
1487 {
1493 - bfloat16_unpack_raw(p, f);
1488 + *p = unpack_raw64(&bfloat16_params, f);
1489 parts64_canonicalize(p, s, &bfloat16_params);
1490 }
1491
@@ -4974,9 +4969,8 @@ float64 float64_silence_nan(float64 a, float_status *status)
4969
4970 bfloat16 bfloat16_silence_nan(bfloat16 a, float_status *status)
4971 {
4977 - FloatParts64 p;
4972 + FloatParts64 p = unpack_raw64(&bfloat16_params, a);
4973
4979 - bfloat16_unpack_raw(&p, a);
4974 p.frac <<= bfloat16_params.frac_shift;
4975 parts64_silence_nan(&p, status);
4976 p.frac >>= bfloat16_params.frac_shift;
@@ -5050,9 +5044,8 @@ float64 float64_squash_input_denormal(float64 a, float_status *status)
5044 bfloat16 bfloat16_squash_input_denormal(bfloat16 a, float_status *status)
5045 {
5046 if (status->flush_inputs_to_zero) {
5053 - FloatParts64 p;
5047 + FloatParts64 p = unpack_raw64(&bfloat16_params, a);
5048
5055 - bfloat16_unpack_raw(&p, a);
5049 if (parts_squash_denormal(p, status)) {
5050 return bfloat16_set_sign(bfloat16_zero, p.sign);
5051 }