From: Clément Chigot Date: Fri, 25 Apr 2025 09:35:13 +0000 (+0200) Subject: target/sparc: don't set FSR_NVA when comparing unordered floats X-Git-Tag: v10.1.0-rc0~74^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4ec799dd17dcbb0fa4e90e685d5d6fcf8f72338a;p=thirdparty%2Fqemu.git target/sparc: don't set FSR_NVA when comparing unordered floats FSR_NVA should be set when one of the operands is a signaling NaN or when using FCMPEx instructions. But those cases are already handled within check_ieee_exception or floatxx_compare functions. Otherwise, it should be left untouched. FTR, this was detected by inf-compare-[5678] tests within gcc testsuites. Signed-off-by: Clément Chigot Message-Id: <20250425093513.863289-1-chigot@adacore.com> Acked-by: Mark Cave-Ayland Reviewed-by: Richard Henderson Signed-off-by: Mark Cave-Ayland --- diff --git a/target/sparc/fop_helper.c b/target/sparc/fop_helper.c index a49334150d3..29fd1664384 100644 --- a/target/sparc/fop_helper.c +++ b/target/sparc/fop_helper.c @@ -445,7 +445,6 @@ static uint32_t finish_fcmp(CPUSPARCState *env, FloatRelation r, uintptr_t ra) case float_relation_greater: return 2; case float_relation_unordered: - env->fsr |= FSR_NVA; return 3; } g_assert_not_reached();