'Newer' versions of MSVCRT than 2013 appear to have fixed the bug around expf
precision which caused
bb9e8c5090f0. It's not clear when this was
changed, but at least on Windows 10 machines with Visual Studio 2019,
expf behaves in line with other implementations.
As there is no clear way to test for the version of the VCRT in use,
simply mark this test as expected-pass rather than xfail.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4946>
}
if (test->ref == &expf && util_inf_sign(testval) == -1) {
- /* XXX: 64bits MSVCRT's expf(-inf) returns -inf instead of 0 */
+ /* Some older 64-bit MSVCRT versions return -inf instead of 0
+ * for expf(-inf). As detecting the VC runtime version is
+ * non-trivial, just ignore the test result. */
#if defined(_MSC_VER) && defined(_WIN64)
- expected_pass = FALSE;
+ expected_pass = pass;
#endif
}