Bug 1315956 - Use sincos() on more platforms. r=jandem
--- a/js/src/jsmath.cpp
+++ b/js/src/jsmath.cpp
@@ -850,19 +850,19 @@ js::math_sin(JSContext* cx, unsigned arg
}
return math_sin_handle(cx, args[0], args.rval());
}
void
js::math_sincos_uncached(double x, double *sin, double *cos)
{
-#if defined(__GLIBC__)
+#if defined(HAVE_SINCOS)
sincos(x, sin, cos);
-#elif defined(HAVE_SINCOS)
+#elif defined(HAVE___SINCOS)
__sincos(x, sin, cos);
#else
*sin = js::math_sin_uncached(x);
*cos = js::math_cos_uncached(x);
#endif
}
void
--- a/js/src/old-configure.in
+++ b/js/src/old-configure.in
@@ -1217,17 +1217,18 @@ Darwin)
AC_SUBST_LIST(REALTIME_LIBS)
fi
;;
esac
dnl Checks for math functions.
dnl ========================================================
AC_CHECK_LIB(m, sin)
-AC_CHECK_LIB(m, __sincos, AC_DEFINE(HAVE_SINCOS))
+AC_CHECK_LIB(m, sincos, AC_DEFINE(HAVE_SINCOS))
+AC_CHECK_LIB(m, __sincos, AC_DEFINE(HAVE___SINCOS))
dnl check for wcrtomb/mbrtowc
dnl =======================================================================
if test -z "$MACOS_DEPLOYMENT_TARGET" || test "$MACOS_DEPLOYMENT_TARGET" -ge "100300"; then
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_CACHE_CHECK(for wcrtomb,