#include <libm-alias-float.h>
-#if LIBM_SVID_COMPAT
+#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_43)
/* wrapper acosf */
float
-__acosf (float x)
+__acos_compatf (float x)
{
if (__builtin_expect (isgreater (fabsf (x), 1.0f), 0)
&& _LIB_VERSION != _IEEE_)
return __ieee754_acosf (x);
}
-libm_alias_float (__acos, acos)
+# ifdef NO_COMPAT_NEEDED
+libm_alias_float (__acos_compat, acos)
+# else
+compat_symbol (libm, __acos_compatf, acosf, GLIBC_2_0);
+# endif
#endif
#include <math_private.h>
#include <libm-alias-finite.h>
#include <math-barriers.h>
+#include <libm-alias-float.h>
+#include <math-svid-compat.h>
#include "math_config.h"
#include "s_asincosf_data.h"
}
float
-__ieee754_acosf (float x)
+__acosf (float x)
{
double pi2 = 0x1.921fb54442d18p+0;
static const double o[] = { 0, 0x1.921fb54442d18p+1 };
}
return r;
}
+strong_alias (__acosf, __ieee754_acosf)
+#if LIBM_SVID_COMPAT
+versioned_symbol (libm, __acosf, acosf, GLIBC_2_43);
+libm_alias_float_other (__acos, acos)
+#else
+libm_alias_float (__acos, acos)
+#endif
libm_alias_finite (__ieee754_acosf, __acosf)
--- /dev/null
+/* m68k provides an optimized __ieee754_acosf. */
+#ifdef SHARED
+# define NO_COMPAT_NEEDED 1
+# include <math/w_acosf_compat.c>
+#else
+# include <math-type-macros-float.h>
+# include <w_acos_template.c>
+#endif