diff --git a/pkgs/development/libraries/xsimd/default.nix b/pkgs/development/libraries/xsimd/default.nix index db761aae7094..019b3afbefc8 100644 --- a/pkgs/development/libraries/xsimd/default.nix +++ b/pkgs/development/libraries/xsimd/default.nix @@ -23,6 +23,9 @@ stdenv.mkDerivation (finalAttrs: { url = "https://github.com/xtensor-stack/xsimd/commit/c8a87ed6e04b6782f48f94713adfb0cad6c11ddf.patch"; hash = "sha256-2/FvBGdqTPcayD7rdHPSzL+F8IYKAfMW0WBJ0cW9EZ0="; }) + ] ++ lib.optionals stdenv.isDarwin [ + # https://github.com/xtensor-stack/xsimd/issues/1030 + ./disable-test_error_gamma.patch ]; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/xsimd/disable-test_error_gamma.patch b/pkgs/development/libraries/xsimd/disable-test_error_gamma.patch new file mode 100644 index 000000000000..49957ea62ed7 --- /dev/null +++ b/pkgs/development/libraries/xsimd/disable-test_error_gamma.patch @@ -0,0 +1,30 @@ +diff --git i/test/test_error_gamma.cpp w/test/test_error_gamma.cpp +index 214cbb5..299e5b8 100644 +--- i/test/test_error_gamma.cpp ++++ w/test/test_error_gamma.cpp +@@ -131,25 +131,6 @@ struct error_gamma_test + INFO("lgamma"); + CHECK_EQ(diff, 0); + } +-#if !(XSIMD_WITH_AVX && !XSIMD_WITH_AVX2) +- +- // tgamma (negative input) +- { +- std::transform(gamma_neg_input.cbegin(), gamma_neg_input.cend(), expected.begin(), +- [](const value_type& v) +- { return std::lgamma(v); }); +- batch_type in, out; +- for (size_t i = 0; i < nb_input; i += size) +- { +- detail::load_batch(in, gamma_neg_input, i); +- out = lgamma(in); +- detail::store_batch(out, res, i); +- } +- size_t diff = detail::get_nb_diff(res, expected); +- INFO("lgamma (negative input)"); +- CHECK_EQ(diff, 0); +- } +-#endif + } + }; +