aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2024-12-11 15:31:03 +0000
committerPeter Maydell <peter.maydell@linaro.org>2024-12-11 15:31:03 +0000
commit46eb7b92db497ee0d7529ac5356009d8152452c9 (patch)
tree7e2be6d8f1fcd1a5893af2f16fa56bbe31ff479e
parent5edd92d6c340553e1788e86fef844a389f052b72 (diff)
downloadqemu-46eb7b92db497ee0d7529ac5356009d8152452c9.zip
qemu-46eb7b92db497ee0d7529ac5356009d8152452c9.tar.gz
qemu-46eb7b92db497ee0d7529ac5356009d8152452c9.tar.bz2
target/ppc: Use env->fp_status in helper_compute_fprf functions
In the helper_compute_fprf functions, we pass a dummy float_status in to the is_signaling_nan() function. This is unnecessary, because we have convenient access to the CPU env pointer here and that is already set up with the correct values for the snan_bit_is_one and no_signaling_nans config settings. is_signaling_nan() doesn't ever update the fp_status with any exception flags, so there is no reason not to use env->fp_status here. Use env->fp_status instead of the dummy fp_status. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20241202131347.498124-34-peter.maydell@linaro.org
-rw-r--r--target/ppc/fpu_helper.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/target/ppc/fpu_helper.c b/target/ppc/fpu_helper.c
index 230466a..d93cfed 100644
--- a/target/ppc/fpu_helper.c
+++ b/target/ppc/fpu_helper.c
@@ -155,8 +155,7 @@ void helper_compute_fprf_##tp(CPUPPCState *env, tp arg) \
} else if (tp##_is_infinity(arg)) { \
fprf = neg ? 0x09 << FPSCR_FPRF : 0x05 << FPSCR_FPRF; \
} else { \
- float_status dummy = { }; /* snan_bit_is_one = 0 */ \
- if (tp##_is_signaling_nan(arg, &dummy)) { \
+ if (tp##_is_signaling_nan(arg, &env->fp_status)) { \
fprf = 0x00 << FPSCR_FPRF; \
} else { \
fprf = 0x11 << FPSCR_FPRF; \