diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-opt')
316 files changed, 3743 insertions, 0 deletions
diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile new file mode 100644 index 0000000..7f7bc3c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/Makefile @@ -0,0 +1,43 @@ +# The`long double' type is a distinct type we support if +# -mlong-double-128 option is used (or when it becomes a default +# when -mlong-double-64 is not used). +long-double-fcts = yes +ifeq (,$(filter -mlong-double-128,$(sysdep-CFLAGS))) +sysdep-CFLAGS += -mlong-double-128 +endif + +ifeq ($(subdir),math) +libm-routines += s_nexttowardfd +routines += math_ldbl_opt nldbl-compat + +extra-libs += libnldbl +libnldbl-calls = asprintf dprintf fprintf fscanf fwprintf fwscanf iovfscanf \ + obstack_printf obstack_vprintf printf scanf snprintf \ + sprintf sscanf swprintf swscanf vasprintf vdprintf vfprintf \ + vfscanf vfwprintf vfwscanf vprintf vscanf vsnprintf \ + vsprintf vsscanf vswprintf vswscanf vwprintf vwscanf \ + wprintf wscanf printf_fp printf_size \ + fprintf_chk fwprintf_chk printf_chk snprintf_chk sprintf_chk \ + swprintf_chk vfprintf_chk vfwprintf_chk vprintf_chk \ + vsnprintf_chk vsprintf_chk vswprintf_chk vwprintf_chk \ + wprintf_chk \ + syslog syslog_chk vsyslog vsyslog_chk \ + strfmon strfmon_l \ + strtold strtold_l strtoldint wcstold wcstold_l wcstoldint \ + qecvt qfcvt qgcvt qecvt_r qfcvt_r \ + isinf isnan finite signbit scalb log2 lgamma_r ceil \ + significand acos asin atan atan2 cos sin tan cosh sinh \ + tanh acosh asinh atanh exp log log10 exp10 pow10 expm1 \ + log1p logb exp2 sqrt cbrt fabs floor j0 j1 y0 y1 erf erfc \ + lgamma tgamma gamma rint nearbyint round trunc \ + copysign fdim fmax fmin nextafter pow hypot fmod drem \ + remainder ldexp scalbn frexp modf scalbln fma nan sincos \ + jn yn ilogb remquo lrint lround llrint llround nexttowardf \ + nexttoward conj cacos cacosh casin catan catanh ccos ccosh \ + casinh cexp clog cproj csin csinh csqrt ctan ctanh cpow \ + cabs carg cimag creal clog10 +libnldbl-routines = $(libnldbl-calls:%=nldbl-%) +libnldbl-inhibit-o = $(object-suffixes) +libnldbl-static-only-routines = $(libnldbl-routines) + +endif diff --git a/sysdeps/ieee754/ldbl-opt/Versions b/sysdeps/ieee754/ldbl-opt/Versions new file mode 100644 index 0000000..d22b18e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/Versions @@ -0,0 +1,87 @@ +%include <nldbl-abi.h> +%ifndef NLDBL_VERSION +% error "nldbl-abi.h must define NLDBL_VERSION" +%endif + +libc { + NLDBL_VERSION { + # IEEE quad long double functions (older symver is for + # IEEE double long double). + ldexpl; copysignl; finitel; frexpl; isinfl; isnanl; modfl; + __isinfl; __isnanl; __finitel; __signbitl; + scalbnl; + qecvt; qfcvt; qgcvt; qecvt_r; qfcvt_r; + + strtold; __strtold_internal; wcstold; __wcstold_internal; + __strtold_l; strtold_l; __wcstold_l; wcstold_l; + + strfmon; __strfmon_l; strfmon_l; + __nldbl_strfmon; __nldbl___strfmon_l; __nldbl_strfmon_l; + __nldbl___vstrfmon; __nldbl___vstrfmon_l; + + syslog; vsyslog; + __nldbl_syslog; __nldbl_vsyslog; + __nldbl___syslog_chk; __nldbl___vsyslog_chk; + + # *printf* family, using IEEE quad long double + __asprintf; asprintf; dprintf; fprintf; fwprintf; _IO_fprintf; + _IO_printf; _IO_sprintf; _IO_vfprintf; _IO_vsprintf; obstack_printf; + obstack_vprintf; printf; __printf_fp; printf_size; snprintf; sprintf; + swprintf; vasprintf; vdprintf; vfprintf; vfwprintf; vprintf; vsnprintf; + __vsnprintf; vsprintf; vswprintf; vwprintf; wprintf; + + # *printf* family, using IEEE double as long double + # The standard functions are __REDIRECTed to these if -mlong-double-64 + __nldbl___asprintf; __nldbl_asprintf; __nldbl_dprintf; __nldbl_fprintf; + __nldbl_fwprintf; __nldbl__IO_fprintf; __nldbl__IO_printf; + __nldbl__IO_sprintf; __nldbl__IO_vfprintf; __nldbl__IO_vsprintf; + __nldbl_obstack_printf; __nldbl_obstack_vprintf; __nldbl_printf; + __nldbl___printf_fp; __nldbl_printf_size; __nldbl_snprintf; + __nldbl_sprintf; __nldbl_swprintf; __nldbl_vasprintf; __nldbl_vdprintf; + __nldbl_vfprintf; __nldbl_vfwprintf; __nldbl_vprintf; __nldbl_vsnprintf; + __nldbl___vsnprintf; __nldbl_vsprintf; __nldbl_vswprintf; + __nldbl_vwprintf; __nldbl_wprintf; + + # *scanf family, using IEEE quad long double + _IO_sscanf; _IO_vfscanf; __vfscanf; __vsscanf; fscanf; fwscanf; scanf; + sscanf; swscanf; vfscanf; vfwscanf; vscanf; vsscanf; vswscanf; vwscanf; + wscanf; + + # *scanf family, using IEEE double as long double + __nldbl__IO_sscanf; __nldbl__IO_vfscanf; __nldbl___vfscanf; + __nldbl___vsscanf; __nldbl_fscanf; __nldbl_fwscanf; __nldbl_scanf; + __nldbl_sscanf; __nldbl_swscanf; __nldbl_vfscanf; __nldbl_vfwscanf; + __nldbl_vscanf; __nldbl_vsscanf; __nldbl_vswscanf; __nldbl_vwscanf; + __nldbl_wscanf; + + # checking versions, using IEEE quad long double + __sprintf_chk; __vsprintf_chk; __snprintf_chk; __vsnprintf_chk; + __printf_chk; __fprintf_chk; __vprintf_chk; __vfprintf_chk; + + # checking versions, using IEEE double as long double + __nldbl___sprintf_chk; __nldbl___vsprintf_chk; __nldbl___snprintf_chk; + __nldbl___vsnprintf_chk; __nldbl___printf_chk; __nldbl___fprintf_chk; + __nldbl___vprintf_chk; __nldbl___vfprintf_chk; + __nldbl___swprintf_chk; __nldbl___vswprintf_chk; __nldbl___fwprintf_chk; + __nldbl___wprintf_chk; __nldbl___vfwprintf_chk; __nldbl___vwprintf_chk; + } +} +libm { + NLDBL_VERSION { + # IEEE quad long double functions (older symver is for + # IEEE double as long double). + cabsl; cargl; cimagl; conjl; creall; cacosl; cacoshl; casinl; + catanl; catanhl; ccosl; ccoshl; casinhl; cexpl; clogl; __clog10l; + clog10l; cpowl; cprojl; csinl; csinhl; csqrtl; ctanl; ctanhl; + fdiml; fmal; fmaxl; fminl; ldexpl; nanl; nextafterl; nexttowardl; + significandl; acosl; acoshl; asinl; atan2l; atanhl; coshl; dreml; + exp10l; pow10l; exp2l; fmodl; hypotl; j0l; y0l; j1l; y1l; jnl; ynl; + lgammal; gammal; lgammal_r; logl; log10l; log2l; powl; remainderl; + scalbl; sinhl; sqrtl; tgammal; asinhl; atanl; cbrtl; ceill; copysignl; + erfl; erfcl; expm1l; fabsl; finitel; floorl; frexpl; ilogbl; + llrintl; llroundl; log1pl; logbl; lrintl; lroundl; modfl; + nearbyintl; remquol; rintl; roundl; scalblnl; scalbnl; sinl; cosl; + sincosl; tanl; tanhl; truncl; expl; __finitel; __signbitl; + __fpclassifyl; nexttowardf; nexttoward; __nldbl_nexttowardf; + } +} diff --git a/sysdeps/ieee754/ldbl-opt/cabs.c b/sysdeps/ieee754/ldbl-opt/cabs.c new file mode 100644 index 0000000..a181de2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/cabs.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/cabs.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cabs, cabsl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/cabsl.c b/sysdeps/ieee754/ldbl-opt/cabsl.c new file mode 100644 index 0000000..b861633 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/cabsl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/cabsl.c> +long_double_symbol (libm, __cabsl, cabsl); diff --git a/sysdeps/ieee754/ldbl-opt/carg.c b/sysdeps/ieee754/ldbl-opt/carg.c new file mode 100644 index 0000000..2ed3581 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/carg.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/carg.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __carg, cargl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/cargl.c b/sysdeps/ieee754/ldbl-opt/cargl.c new file mode 100644 index 0000000..952dc60 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/cargl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/cargl.c> +long_double_symbol (libm, __cargl, cargl); diff --git a/sysdeps/ieee754/ldbl-opt/cimag.c b/sysdeps/ieee754/ldbl-opt/cimag.c new file mode 100644 index 0000000..f805258 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/cimag.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/cimag.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cimag, cimagl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/cimagl.c b/sysdeps/ieee754/ldbl-opt/cimagl.c new file mode 100644 index 0000000..112365e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/cimagl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/cimagl.c> +long_double_symbol (libm, __cimagl, cimagl); diff --git a/sysdeps/ieee754/ldbl-opt/configure b/sysdeps/ieee754/ldbl-opt/configure new file mode 100755 index 0000000..dc81365 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/configure @@ -0,0 +1,69 @@ +# This file is generated from configure.in by Autoconf. DO NOT EDIT! + # Local configure fragment for sysdeps/ieee754/ldbl-opt/. + + +echo "$as_me:$LINENO: checking whether $CC $CFLAGS supports -mlong-double-128" >&5 +echo $ECHO_N "checking whether $CC $CFLAGS supports -mlong-double-128... $ECHO_C" >&6 +if test "${libc_cv_mlong_double_128+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -mlong-double-128" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + +#ifndef __LONG_DOUBLE_128__ +# error "compiler did not predefine __LONG_DOUBLE_128__ as expected" +#endif +long double foobar (long double x) { return x; } + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + libc_cv_mlong_double_128=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +libc_cv_mlong_double_128=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +CFLAGS="$save_CFLAGS" +fi +echo "$as_me:$LINENO: result: $libc_cv_mlong_double_128" >&5 +echo "${ECHO_T}$libc_cv_mlong_double_128" >&6 +if test "$libc_cv_mlong_double_128" = no; then + { { echo "$as_me:$LINENO: error: this configuration requires -mlong-double-128 support" >&5 +echo "$as_me: error: this configuration requires -mlong-double-128 support" >&2;} + { (exit 1); exit 1; }; } +fi diff --git a/sysdeps/ieee754/ldbl-opt/configure.in b/sysdeps/ieee754/ldbl-opt/configure.in new file mode 100644 index 0000000..a77fadd --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/configure.in @@ -0,0 +1,19 @@ +sinclude(./aclocal.m4)dnl Autoconf lossage +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +# Local configure fragment for sysdeps/ieee754/ldbl-opt/. + +AC_CACHE_CHECK(whether $CC $CFLAGS supports -mlong-double-128, + libc_cv_mlong_double_128, [dnl +save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -mlong-double-128" +AC_TRY_COMPILE(, [ +#ifndef __LONG_DOUBLE_128__ +# error "compiler did not predefine __LONG_DOUBLE_128__ as expected" +#endif +long double foobar (long double x) { return x; }], + libc_cv_mlong_double_128=yes, + libc_cv_mlong_double_128=no) +CFLAGS="$save_CFLAGS"]) +if test "$libc_cv_mlong_double_128" = no; then + AC_MSG_ERROR([this configuration requires -mlong-double-128 support]) +fi diff --git a/sysdeps/ieee754/ldbl-opt/conj.c b/sysdeps/ieee754/ldbl-opt/conj.c new file mode 100644 index 0000000..e4edade --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/conj.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/conj.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __conj, conjl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/conjl.c b/sysdeps/ieee754/ldbl-opt/conjl.c new file mode 100644 index 0000000..c98e0ed --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/conjl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/conjl.c> +long_double_symbol (libm, __conjl, conjl); diff --git a/sysdeps/ieee754/ldbl-opt/creal.c b/sysdeps/ieee754/ldbl-opt/creal.c new file mode 100644 index 0000000..0d1c93e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/creal.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/creal.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __creal, creall, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/creall.c b/sysdeps/ieee754/ldbl-opt/creall.c new file mode 100644 index 0000000..68fedd4 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/creall.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/creall.c> +long_double_symbol (libm, __creall, creall); diff --git a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.c b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.c new file mode 100644 index 0000000..49c5c12 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.c @@ -0,0 +1,3 @@ +/* Set temporarily to non-zero if long double should be considered + the same as double. */ +__thread int __no_long_double attribute_tls_model_ie attribute_hidden; diff --git a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h new file mode 100644 index 0000000..692b0c5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h @@ -0,0 +1,52 @@ +/* -mlong-double-64 compatibility mode macros. */ + +#include <nldbl-abi.h> +#ifndef LONG_DOUBLE_COMPAT_VERSION +# error "nldbl-abi.h must define LONG_DOUBLE_COMPAT_VERSION" +#endif + +#include <shlib-compat.h> +#define LONG_DOUBLE_COMPAT(lib, introduced) \ + SHLIB_COMPAT(lib, introduced, LONG_DOUBLE_COMPAT_VERSION) +#define long_double_symbol(lib, local, symbol) \ + long_double_symbol_1 (lib, local, symbol, LONG_DOUBLE_COMPAT_VERSION) +#if defined HAVE_ELF && defined SHARED && defined DO_VERSIONING +# define ldbl_hidden_def(local, name) libc_hidden_ver (local, name) +# define ldbl_strong_alias(name, aliasname) \ + strong_alias (name, __GL_##name##_##aliasname) \ + long_double_symbol (libc, __GL_##name##_##aliasname, aliasname); +# define ldbl_weak_alias(name, aliasname) \ + weak_alias (name, __GL_##name##_##aliasname) \ + long_double_symbol (libc, __GL_##name##_##aliasname, aliasname); +# define long_double_symbol_1(lib, local, symbol, version) \ + versioned_symbol (lib, local, symbol, version) +#elif defined HAVE_WEAK_SYMBOLS +# define ldbl_hidden_def(local, name) libc_hidden_def (name) +# define ldbl_strong_alias(name, aliasname) strong_alias (name, aliasname) +# define ldbl_weak_alias(name, aliasname) weak_alias (name, aliasname) +# ifndef __ASSEMBLER__ +/* Note that weak_alias cannot be used - it is defined to nothing + in most of the C files. */ +# define long_double_symbol_1(lib, local, symbol, version) \ + _weak_alias (local, symbol) +# else +# define long_double_symbol_1(lib, local, symbol, version) \ + weak_alias (local, symbol) +# endif +#else +# define ldbl_hidden_def(local, name) libc_hidden_def (name) +# define ldbl_strong_alias(name, aliasname) strong_alias (name, aliasname) +# define ldbl_weak_alias(name, aliasname) strong_alias (name, aliasname) +# define long_double_symbol_1(lib, local, symbol, version) \ + strong_alias (local, symbol) +#endif + +#ifndef __ASSEMBLER__ +# include <math.h> +# include <math/math_private.h> + +/* Set temporarily to non-zero if long double should be considered + the same as double. */ +extern __thread int __no_long_double attribute_tls_model_ie attribute_hidden; +# define __ldbl_is_dbl __builtin_expect (__no_long_double, 0) +#endif diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-acos.c b/sysdeps/ieee754/ldbl-opt/nldbl-acos.c new file mode 100644 index 0000000..813a17e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-acos.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +acosl (double x) +{ + return acos (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-acosh.c b/sysdeps/ieee754/ldbl-opt/nldbl-acosh.c new file mode 100644 index 0000000..75508e3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-acosh.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +acoshl (double x) +{ + return acosh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-asin.c b/sysdeps/ieee754/ldbl-opt/nldbl-asin.c new file mode 100644 index 0000000..5bbe6cd --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-asin.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +asinl (double x) +{ + return asin (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-asinh.c b/sysdeps/ieee754/ldbl-opt/nldbl-asinh.c new file mode 100644 index 0000000..512f685 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-asinh.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +asinhl (double x) +{ + return asinh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-asprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-asprintf.c new file mode 100644 index 0000000..4be216d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-asprintf.c @@ -0,0 +1,17 @@ +#include "nldbl-compat.h" + +attribute_hidden +int +__asprintf (char **string_ptr, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vasprintf (string_ptr, fmt, arg); + va_end (arg); + + return done; +} +extern __typeof (__asprintf) asprintf attribute_hidden; +weak_alias (__asprintf, asprintf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-atan.c b/sysdeps/ieee754/ldbl-opt/nldbl-atan.c new file mode 100644 index 0000000..2849e48 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-atan.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +atanl (double x) +{ + return atan (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-atan2.c b/sysdeps/ieee754/ldbl-opt/nldbl-atan2.c new file mode 100644 index 0000000..d4e5a91 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-atan2.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +atan2l (double x, double y) +{ + return atan2 (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-atanh.c b/sysdeps/ieee754/ldbl-opt/nldbl-atanh.c new file mode 100644 index 0000000..82b54ca --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-atanh.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +atanhl (double x) +{ + return atanh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cabs.c b/sysdeps/ieee754/ldbl-opt/nldbl-cabs.c new file mode 100644 index 0000000..837822d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cabs.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double +attribute_hidden +cabsl (double _Complex x) +{ + return cabs (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cacos.c b/sysdeps/ieee754/ldbl-opt/nldbl-cacos.c new file mode 100644 index 0000000..d935b51 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cacos.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +cacosl (double _Complex x) +{ + return cacos (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cacosh.c b/sysdeps/ieee754/ldbl-opt/nldbl-cacosh.c new file mode 100644 index 0000000..67f994b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cacosh.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +cacoshl (double _Complex x) +{ + return cacosh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-carg.c b/sysdeps/ieee754/ldbl-opt/nldbl-carg.c new file mode 100644 index 0000000..bfff141 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-carg.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double +attribute_hidden +cargl (double _Complex x) +{ + return carg (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-casin.c b/sysdeps/ieee754/ldbl-opt/nldbl-casin.c new file mode 100644 index 0000000..310aa0a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-casin.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +casinl (double _Complex x) +{ + return casin (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-casinh.c b/sysdeps/ieee754/ldbl-opt/nldbl-casinh.c new file mode 100644 index 0000000..71b466e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-casinh.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +casinhl (double _Complex x) +{ + return casinh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-catan.c b/sysdeps/ieee754/ldbl-opt/nldbl-catan.c new file mode 100644 index 0000000..ea5f528 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-catan.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +catanl (double _Complex x) +{ + return catan (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-catanh.c b/sysdeps/ieee754/ldbl-opt/nldbl-catanh.c new file mode 100644 index 0000000..e6f58aa --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-catanh.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +catanhl (double _Complex x) +{ + return catanh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cbrt.c b/sysdeps/ieee754/ldbl-opt/nldbl-cbrt.c new file mode 100644 index 0000000..1c353a6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cbrt.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +cbrtl (double x) +{ + return cbrt (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ccos.c b/sysdeps/ieee754/ldbl-opt/nldbl-ccos.c new file mode 100644 index 0000000..0e1c2e7 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ccos.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +ccosl (double _Complex x) +{ + return ccos (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ccosh.c b/sysdeps/ieee754/ldbl-opt/nldbl-ccosh.c new file mode 100644 index 0000000..da2bf58 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ccosh.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +ccoshl (double _Complex x) +{ + return ccosh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ceil.c b/sysdeps/ieee754/ldbl-opt/nldbl-ceil.c new file mode 100644 index 0000000..a8fc3d5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ceil.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +ceill (double x) +{ + return ceil (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cexp.c b/sysdeps/ieee754/ldbl-opt/nldbl-cexp.c new file mode 100644 index 0000000..f1837af --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cexp.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +cexpl (double _Complex x) +{ + return cexp (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cimag.c b/sysdeps/ieee754/ldbl-opt/nldbl-cimag.c new file mode 100644 index 0000000..fffbdd5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cimag.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double +attribute_hidden +cimagl (double _Complex x) +{ + return cimag (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-clog.c b/sysdeps/ieee754/ldbl-opt/nldbl-clog.c new file mode 100644 index 0000000..ecbae7b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-clog.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +clogl (double _Complex x) +{ + return clog (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-clog10.c b/sysdeps/ieee754/ldbl-opt/nldbl-clog10.c new file mode 100644 index 0000000..193f401 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-clog10.c @@ -0,0 +1,11 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +clog10l (double _Complex x) +{ + return clog10 (x); +} +extern __typeof (clog10l) __clog10l attribute_hidden; +weak_alias (clog10l, __clog10l) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-compat.c b/sysdeps/ieee754/ldbl-opt/nldbl-compat.c new file mode 100644 index 0000000..f82c5f6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-compat.c @@ -0,0 +1,852 @@ +/* *printf* family compatibility routines for IEEE double as long double + Copyright (C) 2006 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Jakub Jelinek <jakub@cygnus.com>, 2006. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#include <stdarg.h> +#include <stdio.h> +#include <libioP.h> +#include <wchar.h> +#include <printf.h> +#include <monetary.h> +#include <locale/localeinfo.h> +#include <sys/syslog.h> +#include <bits/libc-lock.h> + +#include "nldbl-compat.h" + +libc_hidden_proto (__nldbl_vfprintf) +libc_hidden_proto (__nldbl_vsscanf) +libc_hidden_proto (__nldbl_vsprintf) +libc_hidden_proto (__nldbl_vfscanf) +libc_hidden_proto (__nldbl_vfwscanf) +libc_hidden_proto (__nldbl_vdprintf) +libc_hidden_proto (__nldbl_vswscanf) +libc_hidden_proto (__nldbl_vfwprintf) +libc_hidden_proto (__nldbl_vswprintf) +libc_hidden_proto (__nldbl_vsnprintf) +libc_hidden_proto (__nldbl_vasprintf) +libc_hidden_proto (__nldbl_obstack_vprintf) +libc_hidden_proto (__nldbl___vfwprintf_chk) +libc_hidden_proto (__nldbl___vsnprintf_chk) +libc_hidden_proto (__nldbl___vfprintf_chk) +libc_hidden_proto (__nldbl___vsyslog_chk) +libc_hidden_proto (__nldbl___vsprintf_chk) +libc_hidden_proto (__nldbl___vswprintf_chk) +libc_hidden_proto (__nldbl___vstrfmon) +libc_hidden_proto (__nldbl___vstrfmon_l) + +static void +__nldbl_cleanup (void *arg) +{ + __no_long_double = 0; +} + +#define set_no_long_double() \ + __libc_cleanup_push (__nldbl_cleanup, NULL); __no_long_double = 1 +#define clear_no_long_double() \ + __no_long_double = 0; __libc_cleanup_pop (0) + +/* Compatibility with IEEE double as long double. + IEEE quad long double is used by default for most programs, so + we don't need to split this into one file per function for the + sake of statically linked programs. */ + +int +attribute_compat_text_section +__nldbl___asprintf (char **string_ptr, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vasprintf (string_ptr, fmt, arg); + va_end (arg); + + return done; +} +weak_alias (__nldbl___asprintf, __nldbl_asprintf) + +int +attribute_compat_text_section +__nldbl_dprintf (int d, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vdprintf (d, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_fprintf (FILE *stream, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfprintf (stream, fmt, arg); + va_end (arg); + + return done; +} +weak_alias (__nldbl_fprintf, __nldbl__IO_fprintf) + +int +attribute_compat_text_section weak_function +__nldbl_fwprintf (FILE *stream, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwprintf (stream, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_printf (const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfprintf (stdout, fmt, arg); + va_end (arg); + + return done; +} +strong_alias (__nldbl_printf, __nldbl__IO_printf) + +int +attribute_compat_text_section +__nldbl_sprintf (char *s, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vsprintf (s, fmt, arg); + va_end (arg); + + return done; +} +strong_alias (__nldbl_sprintf, __nldbl__IO_sprintf) + +int +attribute_compat_text_section +__nldbl_vfprintf (FILE *s, const char *fmt, va_list ap) +{ + int done; + set_no_long_double (); + done = INTUSE(_IO_vfprintf) (s, fmt, ap); + clear_no_long_double (); + return done; +} +libc_hidden_def (__nldbl_vfprintf) +strong_alias (__nldbl_vfprintf, __nldbl__IO_vfprintf) + +int +attribute_compat_text_section +__nldbl__IO_vsprintf (char *string, const char *fmt, va_list ap) +{ + int done; + __no_long_double = 1; + done = INTUSE(_IO_vsprintf) (string, fmt, ap); + __no_long_double = 0; + return done; +} +weak_alias (__nldbl__IO_vsprintf, __nldbl_vsprintf) +libc_hidden_def (__nldbl_vsprintf) + +int +attribute_compat_text_section +__nldbl_obstack_vprintf (struct obstack *obstack, const char *fmt, + va_list ap) +{ + int done; + __no_long_double = 1; + done = _IO_obstack_vprintf (obstack, fmt, ap); + __no_long_double = 0; + return done; +} +libc_hidden_def (__nldbl_obstack_vprintf) + +int +attribute_compat_text_section +__nldbl_obstack_printf (struct obstack *obstack, const char *fmt, ...) +{ + int result; + va_list ap; + va_start (ap, fmt); + result = __nldbl_obstack_vprintf (obstack, fmt, ap); + va_end (ap); + return result; +} + +int +attribute_compat_text_section weak_function +__nldbl_snprintf (char *s, size_t maxlen, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vsnprintf (s, maxlen, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_swprintf (wchar_t *s, size_t n, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vswprintf (s, n, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section weak_function +__nldbl_vasprintf (char **result_ptr, const char *fmt, va_list ap) +{ + int res; + __no_long_double = 1; + res = _IO_vasprintf (result_ptr, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl_vasprintf) + +int +attribute_compat_text_section +__nldbl_vdprintf (int d, const char *fmt, va_list arg) +{ + int res; + set_no_long_double (); + res = _IO_vdprintf (d, fmt, arg); + clear_no_long_double (); + return res; +} +libc_hidden_def (__nldbl_vdprintf) + +int +attribute_compat_text_section weak_function +__nldbl_vfwprintf (FILE *s, const wchar_t *fmt, va_list ap) +{ + int res; + set_no_long_double (); + res = _IO_vfwprintf (s, fmt, ap); + clear_no_long_double (); + return res; +} +libc_hidden_def (__nldbl_vfwprintf) + +int +attribute_compat_text_section +__nldbl_vprintf (const char *fmt, va_list ap) +{ + return __nldbl_vfprintf (stdout, fmt, ap); +} + +int +attribute_compat_text_section +__nldbl_vsnprintf (char *string, size_t maxlen, const char *fmt, + va_list ap) +{ + int res; + __no_long_double = 1; + res = _IO_vsnprintf (string, maxlen, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl_vsnprintf) +weak_alias (__nldbl_vsnprintf, __nldbl___vsnprintf) + +int +attribute_compat_text_section weak_function +__nldbl_vswprintf (wchar_t *string, size_t maxlen, const wchar_t *fmt, + va_list ap) +{ + int res; + __no_long_double = 1; + res = _IO_vswprintf (string, maxlen, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl_vswprintf) + +int +attribute_compat_text_section +__nldbl_vwprintf (const wchar_t *fmt, va_list ap) +{ + return __nldbl_vfwprintf (stdout, fmt, ap); +} + +int +attribute_compat_text_section +__nldbl_wprintf (const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwprintf (stdout, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl__IO_vfscanf (FILE *s, const char *fmt, _IO_va_list ap, + int *errp) +{ + int res; + set_no_long_double (); + res = INTUSE(_IO_vfscanf) (s, fmt, ap, errp); + clear_no_long_double (); + return res; +} + +int +attribute_compat_text_section +__nldbl___vfscanf (FILE *s, const char *fmt, va_list ap) +{ + int res; + set_no_long_double (); + res = INTUSE(_IO_vfscanf) (s, fmt, ap, NULL); + clear_no_long_double (); + return res; +} +weak_alias (__nldbl___vfscanf, __nldbl_vfscanf) +libc_hidden_def (__nldbl_vfscanf) + +int +attribute_compat_text_section +__nldbl_sscanf (const char *s, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vsscanf (s, fmt, arg); + va_end (arg); + + return done; +} +strong_alias (__nldbl_sscanf, __nldbl__IO_sscanf) + +int +attribute_compat_text_section +__nldbl___vsscanf (const char *string, const char *fmt, va_list ap) +{ + int res; + __no_long_double = 1; + res = _IO_vsscanf (string, fmt, ap); + __no_long_double = 0; + return res; +} +weak_alias (__nldbl___vsscanf, __nldbl_vsscanf) +libc_hidden_def (__nldbl_vsscanf) + +int +attribute_compat_text_section weak_function +__nldbl_vscanf (const char *fmt, va_list ap) +{ + return __nldbl_vfscanf (stdin, fmt, ap); +} + +int +attribute_compat_text_section +__nldbl_fscanf (FILE *stream, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfscanf (stream, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_scanf (const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfscanf (stdin, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_vfwscanf (FILE *s, const wchar_t *fmt, va_list ap) +{ + int res; + set_no_long_double (); + res = _IO_vfwscanf (s, fmt, ap, NULL); + clear_no_long_double (); + return res; +} +libc_hidden_def (__nldbl_vfwscanf) + +int +attribute_compat_text_section +__nldbl_swscanf (const wchar_t *s, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vswscanf (s, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_vswscanf (const wchar_t *string, const wchar_t *fmt, va_list ap) +{ + int res; + __no_long_double = 1; + res = vswscanf (string, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl_vswscanf) + +int +attribute_compat_text_section weak_function +__nldbl_vwscanf (const wchar_t *fmt, va_list ap) +{ + return __nldbl_vfwscanf (stdin, fmt, ap); +} + +int +attribute_compat_text_section +__nldbl_fwscanf (FILE *stream, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwscanf (stream, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl_wscanf (const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwscanf (stdin, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___fprintf_chk (FILE *stream, int flag, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfprintf_chk (stream, flag, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___fwprintf_chk (FILE *stream, int flag, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfwprintf_chk (stream, flag, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___printf_chk (int flag, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfprintf_chk (stdout, flag, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___snprintf_chk (char *s, size_t maxlen, int flag, size_t slen, + const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vsnprintf_chk (s, maxlen, flag, slen, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___sprintf_chk (char *s, int flag, size_t slen, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vsprintf_chk (s, flag, slen, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___swprintf_chk (wchar_t *s, size_t n, int flag, size_t slen, + const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vswprintf_chk (s, n, flag, slen, fmt, arg); + va_end (arg); + + return done; +} + +int +attribute_compat_text_section +__nldbl___vfprintf_chk (FILE *s, int flag, const char *fmt, va_list ap) +{ + int res; + set_no_long_double (); + res = __vfprintf_chk (s, flag, fmt, ap); + clear_no_long_double (); + return res; +} +libc_hidden_def (__nldbl___vfprintf_chk) + +int +attribute_compat_text_section +__nldbl___vfwprintf_chk (FILE *s, int flag, const wchar_t *fmt, va_list ap) +{ + int res; + set_no_long_double (); + res = __vfwprintf_chk (s, flag, fmt, ap); + clear_no_long_double (); + return res; +} +libc_hidden_def (__nldbl___vfwprintf_chk) + +int +attribute_compat_text_section +__nldbl___vprintf_chk (int flag, const char *fmt, va_list ap) +{ + return __nldbl___vfprintf_chk (stdout, flag, fmt, ap); +} + +int +attribute_compat_text_section +__nldbl___vsnprintf_chk (char *string, size_t maxlen, int flag, size_t slen, + const char *fmt, va_list ap) +{ + int res; + __no_long_double = 1; + res = __vsnprintf_chk (string, maxlen, flag, slen, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl___vsnprintf_chk) + +int +attribute_compat_text_section +__nldbl___vsprintf_chk (char *string, int flag, size_t slen, const char *fmt, + va_list ap) +{ + int res; + __no_long_double = 1; + res = __vsprintf_chk (string, flag, slen, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl___vsprintf_chk) + +int +attribute_compat_text_section +__nldbl___vswprintf_chk (wchar_t *string, size_t maxlen, int flag, size_t slen, + const wchar_t *fmt, va_list ap) +{ + int res; + __no_long_double = 1; + res = __vswprintf_chk (string, maxlen, flag, slen, fmt, ap); + __no_long_double = 0; + return res; +} +libc_hidden_def (__nldbl___vswprintf_chk) + +int +attribute_compat_text_section +__nldbl___vwprintf_chk (int flag, const wchar_t *fmt, va_list ap) +{ + return __nldbl___vfwprintf_chk (stdout, flag, fmt, ap); +} + +int +attribute_compat_text_section +__nldbl___wprintf_chk (int flag, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfwprintf_chk (stdout, flag, fmt, arg); + va_end (arg); + + return done; +} + +extern __typeof (printf_size) __printf_size; + +int +attribute_compat_text_section +__nldbl_printf_size (FILE *fp, const struct printf_info *info, + const void *const *args) +{ + struct printf_info info_no_ldbl = *info; + + info_no_ldbl.is_long_double = 0; + return __printf_size (fp, &info_no_ldbl, args); +} + +extern __typeof (__printf_fp) ___printf_fp; + +int +attribute_compat_text_section +__nldbl___printf_fp (FILE *fp, const struct printf_info *info, + const void *const *args) +{ + struct printf_info info_no_ldbl = *info; + + info_no_ldbl.is_long_double = 0; + return ___printf_fp (fp, &info_no_ldbl, args); +} + +ssize_t +attribute_compat_text_section +__nldbl_strfmon (char *s, size_t maxsize, const char *format, ...) +{ + va_list ap; + ssize_t res; + + va_start (ap, format); + res = __nldbl___vstrfmon (s, maxsize, format, ap); + va_end (ap); + return res; +} + +ssize_t +attribute_compat_text_section +__nldbl___strfmon_l (char *s, size_t maxsize, __locale_t loc, + const char *format, ...) +{ + va_list ap; + ssize_t res; + + va_start (ap, format); + res = __nldbl___vstrfmon_l (s, maxsize, loc, format, ap); + va_end (ap); + return res; +} +weak_alias (__nldbl___strfmon_l, __nldbl_strfmon_l) + +ssize_t +attribute_compat_text_section +__nldbl___vstrfmon (char *s, size_t maxsize, const char *format, va_list ap) +{ + ssize_t res; + __no_long_double = 1; + res = __vstrfmon_l (s, maxsize, _NL_CURRENT_LOCALE, format, ap); + __no_long_double = 0; + va_end (ap); + return res; +} +libc_hidden_def (__nldbl___vstrfmon) + +ssize_t +attribute_compat_text_section +__nldbl___vstrfmon_l (char *s, size_t maxsize, __locale_t loc, + const char *format, va_list ap) +{ + ssize_t res; + __no_long_double = 1; + res = __vstrfmon_l (s, maxsize, loc, format, ap); + __no_long_double = 0; + va_end (ap); + return res; +} +libc_hidden_def (__nldbl___vstrfmon_l) + +void +attribute_compat_text_section +__nldbl_syslog (int pri, const char *fmt, ...) +{ + va_list ap; + va_start (ap, fmt); + __nldbl___vsyslog_chk (pri, -1, fmt, ap); + va_end (ap); +} + +void +attribute_compat_text_section +__nldbl___syslog_chk (int pri, int flag, const char *fmt, ...) +{ + va_list ap; + + va_start (ap, fmt); + __nldbl___vsyslog_chk (pri, flag, fmt, ap); + va_end(ap); +} + +void +attribute_compat_text_section +__nldbl___vsyslog_chk (int pri, int flag, const char *fmt, va_list ap) +{ + set_no_long_double (); + __vsyslog_chk (pri, flag, fmt, ap); + clear_no_long_double (); +} +libc_hidden_def (__nldbl___vsyslog_chk) + +void +attribute_compat_text_section +__nldbl_vsyslog (int pri, const char *fmt, va_list ap) +{ + __nldbl___vsyslog_chk (pri, -1, fmt, ap); +} + +#if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __nldbl__IO_printf, _IO_printf, GLIBC_2_0); +compat_symbol (libc, __nldbl__IO_sprintf, _IO_sprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl__IO_vfprintf, _IO_vfprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl__IO_vsprintf, _IO_vsprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_dprintf, dprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_fprintf, fprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_printf, printf, GLIBC_2_0); +compat_symbol (libc, __nldbl_sprintf, sprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vfprintf, vfprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vprintf, vprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl__IO_fprintf, _IO_fprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl___vsnprintf, __vsnprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_asprintf, asprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_obstack_printf, obstack_printf, GLIBC_2_0); +compat_symbol (libc, __nldbl_obstack_vprintf, obstack_vprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_snprintf, snprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vasprintf, vasprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vdprintf, vdprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vsnprintf, vsnprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vsprintf, vsprintf, GLIBC_2_0); +compat_symbol (libc, __nldbl__IO_sscanf, _IO_sscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl__IO_vfscanf, _IO_vfscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl___vfscanf, __vfscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl___vsscanf, __vsscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl_fscanf, fscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl_scanf, scanf, GLIBC_2_0); +compat_symbol (libc, __nldbl_sscanf, sscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vfscanf, vfscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vscanf, vscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl_vsscanf, vsscanf, GLIBC_2_0); +compat_symbol (libc, __nldbl___printf_fp, __printf_fp, GLIBC_2_0); +compat_symbol (libc, __nldbl_strfmon, strfmon, GLIBC_2_0); +compat_symbol (libc, __nldbl_syslog, syslog, GLIBC_2_0); +compat_symbol (libc, __nldbl_vsyslog, vsyslog, GLIBC_2_0); +#endif +#if LONG_DOUBLE_COMPAT(libc, GLIBC_2_1) +compat_symbol (libc, __nldbl___asprintf, __asprintf, GLIBC_2_1); +compat_symbol (libc, __nldbl_printf_size, printf_size, GLIBC_2_1); +compat_symbol (libc, __nldbl___strfmon_l, __strfmon_l, GLIBC_2_1); +#endif +#if LONG_DOUBLE_COMPAT(libc, GLIBC_2_2) +compat_symbol (libc, __nldbl_swprintf, swprintf, GLIBC_2_2); +compat_symbol (libc, __nldbl_vwprintf, vwprintf, GLIBC_2_2); +compat_symbol (libc, __nldbl_wprintf, wprintf, GLIBC_2_2); +compat_symbol (libc, __nldbl_fwprintf, fwprintf, GLIBC_2_2); +compat_symbol (libc, __nldbl_vfwprintf, vfwprintf, GLIBC_2_2); +compat_symbol (libc, __nldbl_vswprintf, vswprintf, GLIBC_2_2); +compat_symbol (libc, __nldbl_fwscanf, fwscanf, GLIBC_2_2); +compat_symbol (libc, __nldbl_swscanf, swscanf, GLIBC_2_2); +compat_symbol (libc, __nldbl_vfwscanf, vfwscanf, GLIBC_2_2); +compat_symbol (libc, __nldbl_vswscanf, vswscanf, GLIBC_2_2); +compat_symbol (libc, __nldbl_vwscanf, vwscanf, GLIBC_2_2); +compat_symbol (libc, __nldbl_wscanf, wscanf, GLIBC_2_2); +#endif +#if LONG_DOUBLE_COMPAT(libc, GLIBC_2_3) +compat_symbol (libc, __nldbl_strfmon_l, strfmon_l, GLIBC_2_3); +#endif +#if LONG_DOUBLE_COMPAT(libc, GLIBC_2_3_4) +compat_symbol (libc, __nldbl___sprintf_chk, __sprintf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___vsprintf_chk, __vsprintf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___snprintf_chk, __snprintf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___vsnprintf_chk, __vsnprintf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___printf_chk, __printf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___fprintf_chk, __fprintf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___vprintf_chk, __vprintf_chk, GLIBC_2_3_4); +compat_symbol (libc, __nldbl___vfprintf_chk, __vfprintf_chk, GLIBC_2_3_4); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-compat.h b/sysdeps/ieee754/ldbl-opt/nldbl-compat.h new file mode 100644 index 0000000..c046100 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-compat.h @@ -0,0 +1,87 @@ +/* Prototypes for compatibility double == long double entry points. + Copyright (C) 2006 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Jakub Jelinek <jakub@cygnus.com>, 2006. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef __NLDBL_COMPAT_H +#define __NLDBL_COMPAT_H 1 + +/* Avoid long double prototypes. */ +#define __NO_LONG_DOUBLE_MATH 1 +#include <stdarg.h> +#include <stdlib.h> +#include <stdio.h> +#include <printf.h> +#include <wchar.h> +#include <math.h> +#include <monetary.h> +#include <sys/syslog.h> + + +/* Declare the __nldbl_NAME function the wrappers call that's in libc.so. */ +#define NLDBL_DECL(name) extern __typeof (name) __nldbl_##name + +NLDBL_DECL (_IO_vfscanf); +NLDBL_DECL (vfscanf); +NLDBL_DECL (vfwscanf); +NLDBL_DECL (obstack_vprintf); +NLDBL_DECL (vasprintf); +NLDBL_DECL (dprintf); +NLDBL_DECL (vdprintf); +NLDBL_DECL (fprintf); +NLDBL_DECL (vfprintf); +NLDBL_DECL (vfwprintf); +NLDBL_DECL (vsnprintf); +NLDBL_DECL (vsprintf); +NLDBL_DECL (vsscanf); +NLDBL_DECL (vswprintf); +NLDBL_DECL (vswscanf); +NLDBL_DECL (__asprintf); +NLDBL_DECL (asprintf); +NLDBL_DECL (__printf_fp); +NLDBL_DECL (printf_size); +NLDBL_DECL (syslog); +NLDBL_DECL (vsyslog); +NLDBL_DECL (qecvt); +NLDBL_DECL (qfcvt); +NLDBL_DECL (qgcvt); +NLDBL_DECL (__vstrfmon_l); + +/* This one does not exist in the normal interface, only + __nldbl___vstrfmon really exists. */ +extern ssize_t __nldbl___vstrfmon (char *, size_t, const char *, va_list) + __THROW; + +/* These don't use __typeof because they were not declared by the headers, + since we don't compile with _FORTIFY_SOURCE. */ +extern int __nldbl___vfprintf_chk (FILE *__restrict, int, + const char *__restrict, _G_va_list); +extern int __nldbl___vfwprintf_chk (FILE *__restrict, int, + const wchar_t *__restrict, __gnuc_va_list); +extern int __nldbl___vsprintf_chk (char *__restrict, int, size_t, + const char *__restrict, _G_va_list) __THROW; +extern int __nldbl___vsnprintf_chk (char *__restrict, size_t, int, size_t, + const char *__restrict, _G_va_list) + __THROW; +extern int __nldbl___vswprintf_chk (wchar_t *__restrict, size_t, int, size_t, + const wchar_t *__restrict, __gnuc_va_list) + __THROW; +extern void __nldbl___vsyslog_chk (int, int, const char *, va_list); + + +#endif /* __NLDBL_COMPAT_H */ diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-conj.c b/sysdeps/ieee754/ldbl-opt/nldbl-conj.c new file mode 100644 index 0000000..8927ea9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-conj.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +conjl (double _Complex x) +{ + return conj (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-copysign.c b/sysdeps/ieee754/ldbl-opt/nldbl-copysign.c new file mode 100644 index 0000000..ef23bad --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-copysign.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +copysignl (double x, double y) +{ + return copysign (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cos.c b/sysdeps/ieee754/ldbl-opt/nldbl-cos.c new file mode 100644 index 0000000..08738af --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cos.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +cosl (double x) +{ + return cos (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cosh.c b/sysdeps/ieee754/ldbl-opt/nldbl-cosh.c new file mode 100644 index 0000000..0ab834f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cosh.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +coshl (double x) +{ + return cosh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cpow.c b/sysdeps/ieee754/ldbl-opt/nldbl-cpow.c new file mode 100644 index 0000000..709e7d7 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cpow.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +cpowl (double _Complex x, double _Complex y) +{ + return cpow (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-cproj.c b/sysdeps/ieee754/ldbl-opt/nldbl-cproj.c new file mode 100644 index 0000000..6f88b88 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-cproj.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +cprojl (double _Complex x) +{ + return cproj (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-creal.c b/sysdeps/ieee754/ldbl-opt/nldbl-creal.c new file mode 100644 index 0000000..b02ce6e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-creal.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double +attribute_hidden +creall (double _Complex x) +{ + return creal (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-csin.c b/sysdeps/ieee754/ldbl-opt/nldbl-csin.c new file mode 100644 index 0000000..b2e2c9c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-csin.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +csinl (double _Complex x) +{ + return csin (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-csinh.c b/sysdeps/ieee754/ldbl-opt/nldbl-csinh.c new file mode 100644 index 0000000..2bcba920 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-csinh.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +csinhl (double _Complex x) +{ + return csinh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-csqrt.c b/sysdeps/ieee754/ldbl-opt/nldbl-csqrt.c new file mode 100644 index 0000000..ae00a29 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-csqrt.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +csqrtl (double _Complex x) +{ + return csqrt (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ctan.c b/sysdeps/ieee754/ldbl-opt/nldbl-ctan.c new file mode 100644 index 0000000..422c5cc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ctan.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +ctanl (double _Complex x) +{ + return ctan (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ctanh.c b/sysdeps/ieee754/ldbl-opt/nldbl-ctanh.c new file mode 100644 index 0000000..f3842ed --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ctanh.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" +#include <complex.h> + +double _Complex +attribute_hidden +ctanhl (double _Complex x) +{ + return ctanh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-dprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-dprintf.c new file mode 100644 index 0000000..6e26db2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-dprintf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +attribute_hidden +int +dprintf (int d, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vdprintf (d, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-drem.c b/sysdeps/ieee754/ldbl-opt/nldbl-drem.c new file mode 100644 index 0000000..1e08ce1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-drem.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +dreml (double x, double y) +{ + return drem (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-erf.c b/sysdeps/ieee754/ldbl-opt/nldbl-erf.c new file mode 100644 index 0000000..0032c1f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-erf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +erfl (double x) +{ + return erf (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-erfc.c b/sysdeps/ieee754/ldbl-opt/nldbl-erfc.c new file mode 100644 index 0000000..21d0968 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-erfc.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +erfcl (double x) +{ + return erfc (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-exp.c b/sysdeps/ieee754/ldbl-opt/nldbl-exp.c new file mode 100644 index 0000000..ad2c89b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-exp.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +expl (double x) +{ + return exp (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-exp10.c b/sysdeps/ieee754/ldbl-opt/nldbl-exp10.c new file mode 100644 index 0000000..2d0ead6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-exp10.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +exp10l (double x) +{ + return exp10 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-exp2.c b/sysdeps/ieee754/ldbl-opt/nldbl-exp2.c new file mode 100644 index 0000000..d5fce39 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-exp2.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +exp2l (double x) +{ + return exp2 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-expm1.c b/sysdeps/ieee754/ldbl-opt/nldbl-expm1.c new file mode 100644 index 0000000..be5c6e5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-expm1.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +expm1l (double x) +{ + return expm1 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fabs.c b/sysdeps/ieee754/ldbl-opt/nldbl-fabs.c new file mode 100644 index 0000000..10729a6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fabs.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +fabsl (double x) +{ + return fabs (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fdim.c b/sysdeps/ieee754/ldbl-opt/nldbl-fdim.c new file mode 100644 index 0000000..72896b6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fdim.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +fdiml (double x, double y) +{ + return fdim (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-finite.c b/sysdeps/ieee754/ldbl-opt/nldbl-finite.c new file mode 100644 index 0000000..000adfb --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-finite.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__finitel (double x) +{ + return __finite (x); +} +extern __typeof (__finitel) finitel attribute_hidden; +weak_alias (__finitel, finitel) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-floor.c b/sysdeps/ieee754/ldbl-opt/nldbl-floor.c new file mode 100644 index 0000000..c7e9f83 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-floor.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +floorl (double x) +{ + return floor (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fma.c b/sysdeps/ieee754/ldbl-opt/nldbl-fma.c new file mode 100644 index 0000000..9474483 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fma.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +fmal (double x, double y, double z) +{ + return fma (x, y, z); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fmax.c b/sysdeps/ieee754/ldbl-opt/nldbl-fmax.c new file mode 100644 index 0000000..f5a8477 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fmax.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +fmaxl (double x, double y) +{ + return fmax (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fmin.c b/sysdeps/ieee754/ldbl-opt/nldbl-fmin.c new file mode 100644 index 0000000..a353cf9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fmin.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +fminl (double x, double y) +{ + return fmin (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fmod.c b/sysdeps/ieee754/ldbl-opt/nldbl-fmod.c new file mode 100644 index 0000000..aa692b9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fmod.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +fmodl (double x, double y) +{ + return fmod (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-fprintf.c new file mode 100644 index 0000000..9df4c4b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fprintf.c @@ -0,0 +1,17 @@ +#include "nldbl-compat.h" + +attribute_hidden +int +fprintf (FILE *stream, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfprintf (stream, fmt, arg); + va_end (arg); + + return done; +} +extern __typeof (fprintf) _IO_fprintf attribute_hidden; +weak_alias (fprintf, _IO_fprintf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-fprintf_chk.c new file mode 100644 index 0000000..43a7618 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fprintf_chk.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__fprintf_chk (FILE *stream, int flag, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfprintf_chk (stream, flag, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-frexp.c b/sysdeps/ieee754/ldbl-opt/nldbl-frexp.c new file mode 100644 index 0000000..0ec97e1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-frexp.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +frexpl (double x, int *exponent) +{ + return frexp (x, exponent); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-fscanf.c new file mode 100644 index 0000000..1b768e3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fscanf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +fscanf (FILE *stream, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl__IO_vfscanf (stream, fmt, arg, NULL); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fwprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-fwprintf.c new file mode 100644 index 0000000..18362af --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fwprintf.c @@ -0,0 +1,16 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +fwprintf (FILE *stream, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwprintf (stream, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fwprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-fwprintf_chk.c new file mode 100644 index 0000000..09731cf --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fwprintf_chk.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__fwprintf_chk (FILE *stream, int flag, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfwprintf_chk (stream, flag, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fwscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-fwscanf.c new file mode 100644 index 0000000..27fc1a7 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fwscanf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +fwscanf (FILE *stream, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwscanf (stream, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-gamma.c b/sysdeps/ieee754/ldbl-opt/nldbl-gamma.c new file mode 100644 index 0000000..10dc640 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-gamma.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +gammal (double x) +{ + return gamma (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-hypot.c b/sysdeps/ieee754/ldbl-opt/nldbl-hypot.c new file mode 100644 index 0000000..2105f3e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-hypot.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +hypotl (double x, double y) +{ + return hypot (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ilogb.c b/sysdeps/ieee754/ldbl-opt/nldbl-ilogb.c new file mode 100644 index 0000000..e840b2a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ilogb.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +ilogbl (double x) +{ + return ilogb (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-iovfscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-iovfscanf.c new file mode 100644 index 0000000..05581c0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-iovfscanf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +_IO_vfscanf (FILE *s, const char *fmt, _IO_va_list ap, int *errp) +{ + return __nldbl__IO_vfscanf (s, fmt, ap, errp); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-isinf.c b/sysdeps/ieee754/ldbl-opt/nldbl-isinf.c new file mode 100644 index 0000000..340d241 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-isinf.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__isinfl (double x) +{ + return __isinf (x); +} +extern __typeof (__isinfl) isinfl attribute_hidden; +weak_alias (__isinfl, isinfl) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-isnan.c b/sysdeps/ieee754/ldbl-opt/nldbl-isnan.c new file mode 100644 index 0000000..e5f0f1b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-isnan.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__isnanl (double x) +{ + return __isnan (x); +} +extern __typeof (__isnanl) isnanl attribute_hidden; +weak_alias (__isnanl, isnanl) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-j0.c b/sysdeps/ieee754/ldbl-opt/nldbl-j0.c new file mode 100644 index 0000000..9d59f0a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-j0.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +j0l (double x) +{ + return j0 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-j1.c b/sysdeps/ieee754/ldbl-opt/nldbl-j1.c new file mode 100644 index 0000000..dba7366 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-j1.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +j1l (double x) +{ + return j1 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-jn.c b/sysdeps/ieee754/ldbl-opt/nldbl-jn.c new file mode 100644 index 0000000..3f19bbb --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-jn.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +jnl (int n, double x) +{ + return jn (n, x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ldexp.c b/sysdeps/ieee754/ldbl-opt/nldbl-ldexp.c new file mode 100644 index 0000000..360f8f0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ldexp.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +ldexpl (double x, int exponent) +{ + return ldexp (x, exponent); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-lgamma.c b/sysdeps/ieee754/ldbl-opt/nldbl-lgamma.c new file mode 100644 index 0000000..0055212 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-lgamma.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +lgammal (double x) +{ + return lgamma (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-lgamma_r.c b/sysdeps/ieee754/ldbl-opt/nldbl-lgamma_r.c new file mode 100644 index 0000000..e1ab9a1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-lgamma_r.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +lgammal_r (double x, int *signgamp) +{ + return lgamma_r (x, signgamp); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-llrint.c b/sysdeps/ieee754/ldbl-opt/nldbl-llrint.c new file mode 100644 index 0000000..6dfce89 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-llrint.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +long long int +attribute_hidden +llrintl (double x) +{ + return llrint (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-llround.c b/sysdeps/ieee754/ldbl-opt/nldbl-llround.c new file mode 100644 index 0000000..0157a07 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-llround.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +long long int +attribute_hidden +llroundl (double x) +{ + return llround (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-log.c b/sysdeps/ieee754/ldbl-opt/nldbl-log.c new file mode 100644 index 0000000..a5a1ae7 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-log.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +logl (double x) +{ + return log (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-log10.c b/sysdeps/ieee754/ldbl-opt/nldbl-log10.c new file mode 100644 index 0000000..1477866 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-log10.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +log10l (double x) +{ + return log10 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-log1p.c b/sysdeps/ieee754/ldbl-opt/nldbl-log1p.c new file mode 100644 index 0000000..455b25a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-log1p.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +log1pl (double x) +{ + return log1p (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-log2.c b/sysdeps/ieee754/ldbl-opt/nldbl-log2.c new file mode 100644 index 0000000..8c1ae34 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-log2.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +log2l (double x) +{ + return log2 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-logb.c b/sysdeps/ieee754/ldbl-opt/nldbl-logb.c new file mode 100644 index 0000000..d9ce8de --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-logb.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +logbl (double x) +{ + return logb (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-lrint.c b/sysdeps/ieee754/ldbl-opt/nldbl-lrint.c new file mode 100644 index 0000000..0acd3d4 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-lrint.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +long int +attribute_hidden +lrintl (double x) +{ + return lrint (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-lround.c b/sysdeps/ieee754/ldbl-opt/nldbl-lround.c new file mode 100644 index 0000000..aadb111 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-lround.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +long int +attribute_hidden +lroundl (double x) +{ + return lround (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-modf.c b/sysdeps/ieee754/ldbl-opt/nldbl-modf.c new file mode 100644 index 0000000..bcbe6bb --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-modf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +modfl (double x, double *iptr) +{ + return modf (x, iptr); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-nan.c b/sysdeps/ieee754/ldbl-opt/nldbl-nan.c new file mode 100644 index 0000000..8db157a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-nan.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +nanl (const char *tag) +{ + return nan (tag); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-nearbyint.c b/sysdeps/ieee754/ldbl-opt/nldbl-nearbyint.c new file mode 100644 index 0000000..fd4a246 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-nearbyint.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +nearbyintl (double x) +{ + return nearbyint (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-nextafter.c b/sysdeps/ieee754/ldbl-opt/nldbl-nextafter.c new file mode 100644 index 0000000..b0bae43 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-nextafter.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +nextafterl (double x, double y) +{ + return nextafter (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-nexttoward.c b/sysdeps/ieee754/ldbl-opt/nldbl-nexttoward.c new file mode 100644 index 0000000..acbd01a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-nexttoward.c @@ -0,0 +1,14 @@ +#define nexttoward nexttoward_XXX +#define nexttowardl nexttowardl_XXX +#include "nldbl-compat.h" +#undef nexttoward +#undef nexttowardl + +double +attribute_hidden +nexttoward (double x, double y) +{ + return nextafter (x, y); +} +extern __typeof (nexttoward) nexttowardl attribute_hidden; +strong_alias (nexttoward, nexttowardl) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-nexttowardf.c b/sysdeps/ieee754/ldbl-opt/nldbl-nexttowardf.c new file mode 100644 index 0000000..350b08d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-nexttowardf.c @@ -0,0 +1,12 @@ +#define nexttowardf nexttowardf_XXX +#include "nldbl-compat.h" +#undef nexttowardf + +extern float __nldbl_nexttowardf (float x, double y); + +float +attribute_hidden +nexttowardf (float x, double y) +{ + return __nldbl_nexttowardf (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf.c b/sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf.c new file mode 100644 index 0000000..4abff2d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf.c @@ -0,0 +1,13 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +obstack_printf (struct obstack *obstack, const char *fmt, ...) +{ + int result; + va_list ap; + va_start (ap, fmt); + result = __nldbl_obstack_vprintf (obstack, fmt, ap); + va_end (ap); + return result; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf.c new file mode 100644 index 0000000..228a507 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +obstack_vprintf (struct obstack *obstack, const char *fmt, va_list ap) +{ + return __nldbl_obstack_vprintf (obstack, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-pow.c b/sysdeps/ieee754/ldbl-opt/nldbl-pow.c new file mode 100644 index 0000000..a5cc446 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-pow.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +powl (double x, double y) +{ + return pow (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-pow10.c b/sysdeps/ieee754/ldbl-opt/nldbl-pow10.c new file mode 100644 index 0000000..20ebf8d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-pow10.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +pow10l (double x) +{ + return pow10 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-printf.c b/sysdeps/ieee754/ldbl-opt/nldbl-printf.c new file mode 100644 index 0000000..e4b0fba --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-printf.c @@ -0,0 +1,17 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +printf (const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfprintf (stdout, fmt, arg); + va_end (arg); + + return done; +} +extern __typeof (printf) _IO_printf attribute_hidden; +strong_alias (printf, _IO_printf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-printf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-printf_chk.c new file mode 100644 index 0000000..926db41 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-printf_chk.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__printf_chk (int flag, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfprintf_chk (stdout, flag, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-printf_fp.c b/sysdeps/ieee754/ldbl-opt/nldbl-printf_fp.c new file mode 100644 index 0000000..057dfe0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-printf_fp.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__printf_fp (FILE *fp, const struct printf_info *info, + const void *const *args) +{ + return __nldbl___printf_fp (fp, info, args); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-printf_size.c b/sysdeps/ieee754/ldbl-opt/nldbl-printf_size.c new file mode 100644 index 0000000..d8b1fc9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-printf_size.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +printf_size (FILE *__restrict fp, const struct printf_info *info, + const void *const *__restrict args) +{ + return __nldbl_printf_size (fp, info, args); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-qecvt.c b/sysdeps/ieee754/ldbl-opt/nldbl-qecvt.c new file mode 100644 index 0000000..9f0b0a6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-qecvt.c @@ -0,0 +1,10 @@ +#define qecvt qecvt_XXX +#include "nldbl-compat.h" +#undef qecvt + +attribute_hidden +char * +qecvt (double val, int ndigit, int *__restrict decpt, int *__restrict sign) +{ + return ecvt (val, ndigit, decpt, sign); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-qecvt_r.c b/sysdeps/ieee754/ldbl-opt/nldbl-qecvt_r.c new file mode 100644 index 0000000..06f9914 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-qecvt_r.c @@ -0,0 +1,11 @@ +#define qecvt_r qecvt_r_XXX +#include "nldbl-compat.h" +#undef qecvt_r + +int +attribute_hidden +qecvt_r (double val, int ndigit, int *__restrict decpt, int *__restrict sign, + char *__restrict buf, size_t len) +{ + return ecvt_r (val, ndigit, decpt, sign, buf, len); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-qfcvt.c b/sysdeps/ieee754/ldbl-opt/nldbl-qfcvt.c new file mode 100644 index 0000000..37fa7f0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-qfcvt.c @@ -0,0 +1,10 @@ +#define qfcvt qfcvt_XXX +#include "nldbl-compat.h" +#undef qfcvt + +attribute_hidden +char * +qfcvt (double val, int ndigit, int *__restrict decpt, int *__restrict sign) +{ + return fcvt (val, ndigit, decpt, sign); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-qfcvt_r.c b/sysdeps/ieee754/ldbl-opt/nldbl-qfcvt_r.c new file mode 100644 index 0000000..03224fe --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-qfcvt_r.c @@ -0,0 +1,11 @@ +#define qfcvt_r qfcvt_r_XXX +#include "nldbl-compat.h" +#undef qfcvt_r + +int +attribute_hidden +qfcvt_r (double val, int ndigit, int *__restrict decpt, int *__restrict sign, + char *__restrict buf, size_t len) +{ + return fcvt_r (val, ndigit, decpt, sign, buf, len); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-qgcvt.c b/sysdeps/ieee754/ldbl-opt/nldbl-qgcvt.c new file mode 100644 index 0000000..b935d09 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-qgcvt.c @@ -0,0 +1,10 @@ +#define qgcvt qgcvt_XXX +#include "nldbl-compat.h" +#undef qgcvt + +attribute_hidden +char * +qgcvt (double val, int ndigit, char *buf) +{ + return gcvt (val, ndigit, buf); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-remainder.c b/sysdeps/ieee754/ldbl-opt/nldbl-remainder.c new file mode 100644 index 0000000..a8d5baf --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-remainder.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +remainderl (double x, double y) +{ + return remainder (x, y); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-remquo.c b/sysdeps/ieee754/ldbl-opt/nldbl-remquo.c new file mode 100644 index 0000000..592dada --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-remquo.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +remquol (double x, double y, int *quo) +{ + return remquo (x, y, quo); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-rint.c b/sysdeps/ieee754/ldbl-opt/nldbl-rint.c new file mode 100644 index 0000000..00f942f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-rint.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +rintl (double x) +{ + return rint (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-round.c b/sysdeps/ieee754/ldbl-opt/nldbl-round.c new file mode 100644 index 0000000..be9bd51 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-round.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +roundl (double x) +{ + return round (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-scalb.c b/sysdeps/ieee754/ldbl-opt/nldbl-scalb.c new file mode 100644 index 0000000..00d3e2e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-scalb.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +scalbl (double x, double n) +{ + return scalb (x, n); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-scalbln.c b/sysdeps/ieee754/ldbl-opt/nldbl-scalbln.c new file mode 100644 index 0000000..b5bd501 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-scalbln.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +scalblnl (double x, long int n) +{ + return scalbln (x, n); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-scalbn.c b/sysdeps/ieee754/ldbl-opt/nldbl-scalbn.c new file mode 100644 index 0000000..b1914eb --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-scalbn.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +scalbnl (double x, int n) +{ + return scalbn (x, n); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-scanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-scanf.c new file mode 100644 index 0000000..bbab371 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-scanf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +scanf (const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl__IO_vfscanf (stdin, fmt, arg, NULL); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-signbit.c b/sysdeps/ieee754/ldbl-opt/nldbl-signbit.c new file mode 100644 index 0000000..b62d0ed --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-signbit.c @@ -0,0 +1,10 @@ +#define __signbitl __signbitl_XXX +#include "nldbl-compat.h" +#undef __signbitl + +int +attribute_hidden +__signbitl (double x) +{ + return __signbit (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-significand.c b/sysdeps/ieee754/ldbl-opt/nldbl-significand.c new file mode 100644 index 0000000..624381d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-significand.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +significandl (double x) +{ + return significand (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sin.c b/sysdeps/ieee754/ldbl-opt/nldbl-sin.c new file mode 100644 index 0000000..0e76e05 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sin.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +sinl (double x) +{ + return sin (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sincos.c b/sysdeps/ieee754/ldbl-opt/nldbl-sincos.c new file mode 100644 index 0000000..9f2ab2b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sincos.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +void +attribute_hidden +sincosl (double x, double *sinx, double *cosx) +{ + sincos (x, sinx, cosx); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sinh.c b/sysdeps/ieee754/ldbl-opt/nldbl-sinh.c new file mode 100644 index 0000000..99ea62e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sinh.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +sinhl (double x) +{ + return sinh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-snprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-snprintf.c new file mode 100644 index 0000000..ef6fb96 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-snprintf.c @@ -0,0 +1,16 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +snprintf (char *s, size_t maxlen, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vsnprintf (s, maxlen, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-snprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-snprintf_chk.c new file mode 100644 index 0000000..944d3de --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-snprintf_chk.c @@ -0,0 +1,16 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__snprintf_chk (char *s, size_t maxlen, int flag, size_t slen, + const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vsnprintf_chk (s, maxlen, flag, slen, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-sprintf.c new file mode 100644 index 0000000..5d37a7e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sprintf.c @@ -0,0 +1,17 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +sprintf (char *s, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vsprintf (s, fmt, arg); + va_end (arg); + + return done; +} +extern __typeof (sprintf) _IO_sprintf attribute_hidden; +strong_alias (sprintf, _IO_sprintf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-sprintf_chk.c new file mode 100644 index 0000000..349b7c5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sprintf_chk.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__sprintf_chk (char *s, int flag, size_t slen, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vsprintf_chk (s, flag, slen, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sqrt.c b/sysdeps/ieee754/ldbl-opt/nldbl-sqrt.c new file mode 100644 index 0000000..4ae6566 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sqrt.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +sqrtl (double x) +{ + return sqrt (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-sscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-sscanf.c new file mode 100644 index 0000000..a771d49 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-sscanf.c @@ -0,0 +1,17 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +sscanf (const char *s, const char *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vsscanf (s, fmt, arg); + va_end (arg); + + return done; +} +extern __typeof (sscanf) _IO_sscanf attribute_hidden; +strong_alias (sscanf, _IO_sscanf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-strfmon.c b/sysdeps/ieee754/ldbl-opt/nldbl-strfmon.c new file mode 100644 index 0000000..38f4071 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-strfmon.c @@ -0,0 +1,14 @@ +#include "nldbl-compat.h" + +ssize_t +attribute_hidden +strfmon (char *s, size_t maxsize, const char *format, ...) +{ + va_list ap; + ssize_t res; + + va_start (ap, format); + res = __nldbl___vstrfmon (s, maxsize, format, ap); + va_end (ap); + return res; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-strfmon_l.c b/sysdeps/ieee754/ldbl-opt/nldbl-strfmon_l.c new file mode 100644 index 0000000..0db0e8c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-strfmon_l.c @@ -0,0 +1,16 @@ +#include "nldbl-compat.h" + +ssize_t +attribute_hidden +__strfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format, ...) +{ + va_list ap; + ssize_t res; + + va_start (ap, format); + res = __nldbl___vstrfmon_l (s, maxsize, loc, format, ap); + va_end (ap); + return res; +} +extern __typeof (__strfmon_l) strfmon_l attribute_hidden; +weak_alias (__strfmon_l, strfmon_l) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-strtold.c b/sysdeps/ieee754/ldbl-opt/nldbl-strtold.c new file mode 100644 index 0000000..99b9079 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-strtold.c @@ -0,0 +1,10 @@ +#define strtold strtold_XXX +#include "nldbl-compat.h" +#undef strtold + +double +attribute_hidden +strtold (const char *nptr, char **endptr) +{ + return strtod (nptr, endptr); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-strtold_l.c b/sysdeps/ieee754/ldbl-opt/nldbl-strtold_l.c new file mode 100644 index 0000000..4227463 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-strtold_l.c @@ -0,0 +1,20 @@ +#define strtold_l strtold_l_XXX +#define __strtold_l __strtold_l_XXX +#define __strtod_l __strtod_l_XXX +#include "nldbl-compat.h" +#undef strtold_l +#undef __strtold_l +#undef __strtod_l + +extern double +__strtod_l (__const char *__restrict __nptr, char **__restrict __endptr, + __locale_t __loc); + +double +attribute_hidden +__strtold_l (const char *nptr, char **endptr, __locale_t loc) +{ + return __strtod_l (nptr, endptr, loc); +} +extern __typeof (__strtold_l) strtold_l attribute_hidden; +weak_alias (__strtold_l, strtold_l) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-strtoldint.c b/sysdeps/ieee754/ldbl-opt/nldbl-strtoldint.c new file mode 100644 index 0000000..0bafabc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-strtoldint.c @@ -0,0 +1,10 @@ +#define __strtold_internal __strtold_internal_XXX +#include "nldbl-compat.h" +#undef __strtold_internal + +double +attribute_hidden +__strtold_internal (const char *nptr, char **endptr, int group) +{ + return __strtod_internal (nptr, endptr, group); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-swprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-swprintf.c new file mode 100644 index 0000000..7f4f7b0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-swprintf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +swprintf (wchar_t *s, size_t n, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vswprintf (s, n, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-swprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-swprintf_chk.c new file mode 100644 index 0000000..0373f6e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-swprintf_chk.c @@ -0,0 +1,16 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__swprintf_chk (wchar_t *s, size_t n, int flag, size_t slen, + const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vswprintf_chk (s, n, flag, slen, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-swscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-swscanf.c new file mode 100644 index 0000000..dd058f4 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-swscanf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +swscanf (const wchar_t *s, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vswscanf (s, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-syslog.c b/sysdeps/ieee754/ldbl-opt/nldbl-syslog.c new file mode 100644 index 0000000..8687e9f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-syslog.c @@ -0,0 +1,11 @@ +#include "nldbl-compat.h" + +void +attribute_hidden +syslog (int pri, const char *fmt, ...) +{ + va_list ap; + va_start (ap, fmt); + __nldbl_vsyslog (pri, fmt, ap); + va_end (ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-syslog_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-syslog_chk.c new file mode 100644 index 0000000..31ea6a8 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-syslog_chk.c @@ -0,0 +1,12 @@ +#include "nldbl-compat.h" + +void +attribute_hidden +__syslog_chk (int pri, int flag, const char *fmt, ...) +{ + va_list ap; + + va_start (ap, fmt); + __nldbl___vsyslog_chk (pri, flag, fmt, ap); + va_end(ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-tan.c b/sysdeps/ieee754/ldbl-opt/nldbl-tan.c new file mode 100644 index 0000000..1a27b6f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-tan.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +tanl (double x) +{ + return tan (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-tanh.c b/sysdeps/ieee754/ldbl-opt/nldbl-tanh.c new file mode 100644 index 0000000..fc2fd32 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-tanh.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +tanhl (double x) +{ + return tanh (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-tgamma.c b/sysdeps/ieee754/ldbl-opt/nldbl-tgamma.c new file mode 100644 index 0000000..bbf613a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-tgamma.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +tgammal (double x) +{ + return tgamma (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-trunc.c b/sysdeps/ieee754/ldbl-opt/nldbl-trunc.c new file mode 100644 index 0000000..d0131e8 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-trunc.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +truncl (double x) +{ + return trunc (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vasprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vasprintf.c new file mode 100644 index 0000000..52fa18c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vasprintf.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +vasprintf (char **result_ptr, const char *fmt, va_list ap) +{ + return __nldbl_vasprintf (result_ptr, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vdprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vdprintf.c new file mode 100644 index 0000000..1acbd40 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vdprintf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vdprintf (int d, const char *fmt, va_list arg) +{ + return __nldbl_vdprintf (d, fmt, arg); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vfprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vfprintf.c new file mode 100644 index 0000000..6ca8437 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vfprintf.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vfprintf (FILE *s, const char *fmt, va_list ap) +{ + return __nldbl_vfprintf (s, fmt, ap); +} +extern __typeof (vfprintf) _IO_vfprintf attribute_hidden; +strong_alias (vfprintf, _IO_vfprintf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vfprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vfprintf_chk.c new file mode 100644 index 0000000..0f6820a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vfprintf_chk.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vfprintf_chk (FILE *s, int flag, const char *fmt, va_list ap) +{ + return __nldbl___vfprintf_chk (s, flag, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vfscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vfscanf.c new file mode 100644 index 0000000..f23465e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vfscanf.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vfscanf (FILE *s, const char *fmt, va_list ap) +{ + return __nldbl__IO_vfscanf (s, fmt, ap, NULL); +} +extern __typeof (__vfscanf) vfscanf attribute_hidden; +weak_alias (__vfscanf, vfscanf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf.c new file mode 100644 index 0000000..c3fe76a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +vfwprintf (FILE *s, const wchar_t *fmt, va_list ap) +{ + return __nldbl_vfwprintf (s, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf_chk.c new file mode 100644 index 0000000..b3b69f0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf_chk.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vfwprintf_chk (FILE *s, int flag, const wchar_t *fmt, va_list ap) +{ + return __nldbl___vfwprintf_chk (s, flag, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vfwscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vfwscanf.c new file mode 100644 index 0000000..be9febc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vfwscanf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vfwscanf (FILE *s, const wchar_t *fmt, va_list ap) +{ + return __nldbl_vfwscanf (s, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vprintf.c new file mode 100644 index 0000000..ed0d27d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vprintf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vprintf (const char *fmt, va_list ap) +{ + return __nldbl_vfprintf (stdout, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vprintf_chk.c new file mode 100644 index 0000000..63b3e8f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vprintf_chk.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vprintf_chk (int flag, const char *fmt, va_list ap) +{ + return __nldbl___vfprintf_chk (stdout, flag, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vscanf.c new file mode 100644 index 0000000..e75907b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vscanf.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +vscanf (const char *fmt, va_list ap) +{ + return __nldbl__IO_vfscanf (stdin, fmt, ap, NULL); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf.c new file mode 100644 index 0000000..5a9bcbc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vsnprintf (char *string, size_t maxlen, const char *fmt, va_list ap) +{ + return __nldbl_vsnprintf (string, maxlen, fmt, ap); +} +extern __typeof (vsnprintf) __vsnprintf attribute_hidden; +weak_alias (vsnprintf, __vsnprintf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf_chk.c new file mode 100644 index 0000000..1938029 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf_chk.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vsnprintf_chk (char *string, size_t maxlen, int flag, size_t slen, + const char *fmt, va_list ap) +{ + return __nldbl___vsnprintf_chk (string, maxlen, flag, slen, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsprintf.c new file mode 100644 index 0000000..04406d0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsprintf.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +_IO_vsprintf (char *string, const char *fmt, va_list ap) +{ + return __nldbl_vsprintf (string, fmt, ap); +} +extern __typeof (_IO_vsprintf) vsprintf attribute_hidden; +weak_alias (_IO_vsprintf, vsprintf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsprintf_chk.c new file mode 100644 index 0000000..9df143f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsprintf_chk.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vsprintf_chk (char *string, int flag, size_t slen, const char *fmt, + va_list ap) +{ + return __nldbl___vsprintf_chk (string, flag, slen, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsscanf.c new file mode 100644 index 0000000..f5594c1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsscanf.c @@ -0,0 +1,10 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vsscanf (const char *string, const char *fmt, va_list ap) +{ + return __nldbl_vsscanf (string, fmt, ap); +} +extern __typeof (__vsscanf) vsscanf attribute_hidden; +weak_alias (__vsscanf, vsscanf) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vswprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vswprintf.c new file mode 100644 index 0000000..ff3415a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vswprintf.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +vswprintf (wchar_t *string, size_t maxlen, const wchar_t *fmt, va_list ap) +{ + return __nldbl_vswprintf (string, maxlen, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vswprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vswprintf_chk.c new file mode 100644 index 0000000..0cd1f96 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vswprintf_chk.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vswprintf_chk (wchar_t *string, size_t maxlen, int flag, size_t slen, + const wchar_t *fmt, va_list ap) +{ + return __nldbl___vswprintf_chk (string, maxlen, flag, slen, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vswscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vswscanf.c new file mode 100644 index 0000000..bd4bb51 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vswscanf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vswscanf (const wchar_t *string, const wchar_t *fmt, va_list ap) +{ + return __nldbl_vswscanf (string, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsyslog.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsyslog.c new file mode 100644 index 0000000..eed1010 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsyslog.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +attribute_hidden +void +vsyslog (int pri, const char *fmt, va_list ap) +{ + __nldbl_vsyslog (pri, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vsyslog_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vsyslog_chk.c new file mode 100644 index 0000000..2221474 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vsyslog_chk.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +void +attribute_hidden +__vsyslog_chk (int pri, int flag, const char *fmt, va_list ap) +{ + __nldbl___vsyslog_chk (pri, flag, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vwprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vwprintf.c new file mode 100644 index 0000000..f46bdb3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vwprintf.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +vwprintf (const wchar_t *fmt, va_list ap) +{ + return __nldbl_vfwprintf (stdout, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vwprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-vwprintf_chk.c new file mode 100644 index 0000000..f7e7185 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vwprintf_chk.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__vwprintf_chk (int flag, const wchar_t *fmt, va_list ap) +{ + return __nldbl___vfwprintf_chk (stdout, flag, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-vwscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-vwscanf.c new file mode 100644 index 0000000..d39578c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-vwscanf.c @@ -0,0 +1,9 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +weak_function +vwscanf (const wchar_t *fmt, va_list ap) +{ + return __nldbl_vfwscanf (stdin, fmt, ap); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-wcstold.c b/sysdeps/ieee754/ldbl-opt/nldbl-wcstold.c new file mode 100644 index 0000000..dbaffaa --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-wcstold.c @@ -0,0 +1,10 @@ +#define wcstold wcstold_XXX +#include "nldbl-compat.h" +#undef wcstold + +double +attribute_hidden +wcstold (const wchar_t *nptr, wchar_t **endptr) +{ + return wcstod (nptr, endptr); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-wcstold_l.c b/sysdeps/ieee754/ldbl-opt/nldbl-wcstold_l.c new file mode 100644 index 0000000..e32d13a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-wcstold_l.c @@ -0,0 +1,14 @@ +#define wcstold_l wcstold_l_XXX +#define __wcstold_l __wcstold_l_XXX +#include "nldbl-compat.h" +#undef wcstold_l +#undef __wcstold_l + +double +attribute_hidden +__wcstold_l (const wchar_t *nptr, wchar_t **endptr, __locale_t loc) +{ + return __wcstod_l (nptr, endptr, loc); +} +extern __typeof (__wcstold_l) wcstold_l attribute_hidden; +weak_alias (__wcstold_l, wcstold_l) diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-wcstoldint.c b/sysdeps/ieee754/ldbl-opt/nldbl-wcstoldint.c new file mode 100644 index 0000000..b638a39 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-wcstoldint.c @@ -0,0 +1,10 @@ +#define __wcstold_internal __wcstold_internal_XXX +#include "nldbl-compat.h" +#undef __wcstold_internal + +double +attribute_hidden +__wcstold_internal (const wchar_t *nptr, wchar_t **endptr, int group) +{ + return __wcstod_internal (nptr, endptr, group); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-wprintf.c b/sysdeps/ieee754/ldbl-opt/nldbl-wprintf.c new file mode 100644 index 0000000..2aa1a74 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-wprintf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +wprintf (const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwprintf (stdout, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-wprintf_chk.c b/sysdeps/ieee754/ldbl-opt/nldbl-wprintf_chk.c new file mode 100644 index 0000000..39191e1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-wprintf_chk.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +__wprintf_chk (int flag, const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl___vfwprintf_chk (stdout, flag, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-wscanf.c b/sysdeps/ieee754/ldbl-opt/nldbl-wscanf.c new file mode 100644 index 0000000..4ee3fdc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-wscanf.c @@ -0,0 +1,15 @@ +#include "nldbl-compat.h" + +int +attribute_hidden +wscanf (const wchar_t *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = __nldbl_vfwscanf (stdin, fmt, arg); + va_end (arg); + + return done; +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-y0.c b/sysdeps/ieee754/ldbl-opt/nldbl-y0.c new file mode 100644 index 0000000..e35621f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-y0.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +y0l (double x) +{ + return y0 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-y1.c b/sysdeps/ieee754/ldbl-opt/nldbl-y1.c new file mode 100644 index 0000000..c47abcd --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-y1.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +y1l (double x) +{ + return y1 (x); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-yn.c b/sysdeps/ieee754/ldbl-opt/nldbl-yn.c new file mode 100644 index 0000000..7623d45 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-yn.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +ynl (int n, double x) +{ + return yn (n, x); +} diff --git a/sysdeps/ieee754/ldbl-opt/s_asinh.c b/sysdeps/ieee754/ldbl-opt/s_asinh.c new file mode 100644 index 0000000..e9bcfae --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_asinh.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_asinh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __asinh, asinhl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_atan.c b/sysdeps/ieee754/ldbl-opt/s_atan.c new file mode 100644 index 0000000..5fbd5e6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_atan.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_atan.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, atan, atanl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cacos.c b/sysdeps/ieee754/ldbl-opt/s_cacos.c new file mode 100644 index 0000000..db90a9e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cacos.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_cacos.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cacos, cacosl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cacosh.c b/sysdeps/ieee754/ldbl-opt/s_cacosh.c new file mode 100644 index 0000000..e68049d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cacosh.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_cacosh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cacosh, cacoshl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cacoshl.c b/sysdeps/ieee754/ldbl-opt/s_cacoshl.c new file mode 100644 index 0000000..ed4a299 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cacoshl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_cacoshl.c> +long_double_symbol (libm, __cacoshl, cacoshl); diff --git a/sysdeps/ieee754/ldbl-opt/s_cacosl.c b/sysdeps/ieee754/ldbl-opt/s_cacosl.c new file mode 100644 index 0000000..9b84005 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cacosl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_cacosl.c> +long_double_symbol (libm, __cacosl, cacosl); diff --git a/sysdeps/ieee754/ldbl-opt/s_casin.c b/sysdeps/ieee754/ldbl-opt/s_casin.c new file mode 100644 index 0000000..04c47ca --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_casin.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_casin.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __casin, casinl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_casinh.c b/sysdeps/ieee754/ldbl-opt/s_casinh.c new file mode 100644 index 0000000..19c4fa3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_casinh.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_casinh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __casinh, casinhl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_casinhl.c b/sysdeps/ieee754/ldbl-opt/s_casinhl.c new file mode 100644 index 0000000..976fa8e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_casinhl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_casinhl.c> +long_double_symbol (libm, __casinhl, casinhl); diff --git a/sysdeps/ieee754/ldbl-opt/s_casinl.c b/sysdeps/ieee754/ldbl-opt/s_casinl.c new file mode 100644 index 0000000..7afb77c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_casinl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_casinl.c> +long_double_symbol (libm, __casinl, casinl); diff --git a/sysdeps/ieee754/ldbl-opt/s_catan.c b/sysdeps/ieee754/ldbl-opt/s_catan.c new file mode 100644 index 0000000..19f6173 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_catan.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_catan.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __catan, catanl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_catanh.c b/sysdeps/ieee754/ldbl-opt/s_catanh.c new file mode 100644 index 0000000..cff7861 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_catanh.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_catanh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __catanh, catanhl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_catanhl.c b/sysdeps/ieee754/ldbl-opt/s_catanhl.c new file mode 100644 index 0000000..e956282 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_catanhl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_catanhl.c> +long_double_symbol (libm, __catanhl, catanhl); diff --git a/sysdeps/ieee754/ldbl-opt/s_catanl.c b/sysdeps/ieee754/ldbl-opt/s_catanl.c new file mode 100644 index 0000000..ee2fdf5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_catanl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_catanl.c> +long_double_symbol (libm, __catanl, catanl); diff --git a/sysdeps/ieee754/ldbl-opt/s_cbrt.c b/sysdeps/ieee754/ldbl-opt/s_cbrt.c new file mode 100644 index 0000000..cdc6357 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cbrt.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_cbrt.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __cbrt, cbrtl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ccos.c b/sysdeps/ieee754/ldbl-opt/s_ccos.c new file mode 100644 index 0000000..2c43c7f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ccos.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_ccos.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __ccos, ccosl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ccosh.c b/sysdeps/ieee754/ldbl-opt/s_ccosh.c new file mode 100644 index 0000000..3753cd5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ccosh.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_ccosh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __ccosh, ccoshl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ccoshl.c b/sysdeps/ieee754/ldbl-opt/s_ccoshl.c new file mode 100644 index 0000000..9f0c1e1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ccoshl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_ccoshl.c> +long_double_symbol (libm, __ccoshl, ccoshl); diff --git a/sysdeps/ieee754/ldbl-opt/s_ccosl.c b/sysdeps/ieee754/ldbl-opt/s_ccosl.c new file mode 100644 index 0000000..e93e805 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ccosl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_ccosl.c> +long_double_symbol (libm, __ccosl, ccosl); diff --git a/sysdeps/ieee754/ldbl-opt/s_ceil.c b/sysdeps/ieee754/ldbl-opt/s_ceil.c new file mode 100644 index 0000000..6e4b707 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ceil.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_ceil.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __ceil, ceill, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cexp.c b/sysdeps/ieee754/ldbl-opt/s_cexp.c new file mode 100644 index 0000000..d983c96 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cexp.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_cexp.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cexp, cexpl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cexpl.c b/sysdeps/ieee754/ldbl-opt/s_cexpl.c new file mode 100644 index 0000000..d5ae1fc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cexpl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_cexpl.c> +long_double_symbol (libm, __cexpl, cexpl); diff --git a/sysdeps/ieee754/ldbl-opt/s_clog.c b/sysdeps/ieee754/ldbl-opt/s_clog.c new file mode 100644 index 0000000..3e0e90c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_clog.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_clog.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __clog, clogl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_clog10.c b/sysdeps/ieee754/ldbl-opt/s_clog10.c new file mode 100644 index 0000000..ac3f4a3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_clog10.c @@ -0,0 +1,7 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_clog10.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __clog10, __clog10l, GLIBC_2_1); +compat_symbol (libm, clog10, clog10l, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_clog10l.c b/sysdeps/ieee754/ldbl-opt/s_clog10l.c new file mode 100644 index 0000000..954f680 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_clog10l.c @@ -0,0 +1,10 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#define __clog10l __clog10l_internal +#include <math/s_clog10l.c> +#undef __clog10l +strong_alias (__clog10l_internal, __clog10l__internal) +long_double_symbol (libm, __clog10l_internal, __clog10l); +long_double_symbol (libm, __clog10l__internal, clog10l); diff --git a/sysdeps/ieee754/ldbl-opt/s_clogl.c b/sysdeps/ieee754/ldbl-opt/s_clogl.c new file mode 100644 index 0000000..75126c8 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_clogl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_clogl.c> +long_double_symbol (libm, __clogl, clogl); diff --git a/sysdeps/ieee754/ldbl-opt/s_copysign.c b/sysdeps/ieee754/ldbl-opt/s_copysign.c new file mode 100644 index 0000000..425e0ea --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_copysign.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_copysign.c> +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __copysign, copysignl, GLIBC_2_0); +# endif +#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __copysign, copysignl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cpow.c b/sysdeps/ieee754/ldbl-opt/s_cpow.c new file mode 100644 index 0000000..4801d7c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cpow.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_cpow.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cpow, cpowl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cpowl.c b/sysdeps/ieee754/ldbl-opt/s_cpowl.c new file mode 100644 index 0000000..61840e3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cpowl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_cpowl.c> +long_double_symbol (libm, __cpowl, cpowl); diff --git a/sysdeps/ieee754/ldbl-opt/s_cproj.c b/sysdeps/ieee754/ldbl-opt/s_cproj.c new file mode 100644 index 0000000..f298c37 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cproj.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_cproj.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __cproj, cprojl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_cprojl.c b/sysdeps/ieee754/ldbl-opt/s_cprojl.c new file mode 100644 index 0000000..1cc0580 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_cprojl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_cprojl.c> +long_double_symbol (libm, __cprojl, cprojl); diff --git a/sysdeps/ieee754/ldbl-opt/s_csin.c b/sysdeps/ieee754/ldbl-opt/s_csin.c new file mode 100644 index 0000000..7017c95 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_csin.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_csin.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __csin, csinl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_csinh.c b/sysdeps/ieee754/ldbl-opt/s_csinh.c new file mode 100644 index 0000000..a1fa667 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_csinh.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_csinh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __csinh, csinhl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_csinhl.c b/sysdeps/ieee754/ldbl-opt/s_csinhl.c new file mode 100644 index 0000000..484d466 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_csinhl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_csinhl.c> +long_double_symbol (libm, __csinhl, csinhl); diff --git a/sysdeps/ieee754/ldbl-opt/s_csinl.c b/sysdeps/ieee754/ldbl-opt/s_csinl.c new file mode 100644 index 0000000..f71642e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_csinl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_csinl.c> +long_double_symbol (libm, __csinl, csinl); diff --git a/sysdeps/ieee754/ldbl-opt/s_csqrt.c b/sysdeps/ieee754/ldbl-opt/s_csqrt.c new file mode 100644 index 0000000..2b6dcfe --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_csqrt.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_csqrt.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __csqrt, csqrtl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_csqrtl.c b/sysdeps/ieee754/ldbl-opt/s_csqrtl.c new file mode 100644 index 0000000..045ff93 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_csqrtl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_csqrtl.c> +long_double_symbol (libm, __csqrtl, csqrtl); diff --git a/sysdeps/ieee754/ldbl-opt/s_ctan.c b/sysdeps/ieee754/ldbl-opt/s_ctan.c new file mode 100644 index 0000000..a6a21f9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ctan.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_ctan.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __ctan, ctanl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ctanh.c b/sysdeps/ieee754/ldbl-opt/s_ctanh.c new file mode 100644 index 0000000..fd4be12 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ctanh.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#include <math/s_ctanh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __ctanh, ctanhl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ctanhl.c b/sysdeps/ieee754/ldbl-opt/s_ctanhl.c new file mode 100644 index 0000000..f159373 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ctanhl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_ctanhl.c> +long_double_symbol (libm, __ctanhl, ctanhl); diff --git a/sysdeps/ieee754/ldbl-opt/s_ctanl.c b/sysdeps/ieee754/ldbl-opt/s_ctanl.c new file mode 100644 index 0000000..0c2d94c --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ctanl.c @@ -0,0 +1,6 @@ +#include <complex.h> +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_ctanl.c> +long_double_symbol (libm, __ctanl, ctanl); diff --git a/sysdeps/ieee754/ldbl-opt/s_erf.c b/sysdeps/ieee754/ldbl-opt/s_erf.c new file mode 100644 index 0000000..76f1baa --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_erf.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_erf.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __erf, erfl, GLIBC_2_0); +compat_symbol (libm, __erfc, erfcl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_expm1.c b/sysdeps/ieee754/ldbl-opt/s_expm1.c new file mode 100644 index 0000000..ef9b595 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_expm1.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_expm1.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __expm1, expm1l, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fabs.c b/sysdeps/ieee754/ldbl-opt/s_fabs.c new file mode 100644 index 0000000..e7c9218 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fabs.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_fabs.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __fabs, fabsl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fdim.c b/sysdeps/ieee754/ldbl-opt/s_fdim.c new file mode 100644 index 0000000..02c95bf --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fdim.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/s_fdim.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fdim, fdiml, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fdiml.c b/sysdeps/ieee754/ldbl-opt/s_fdiml.c new file mode 100644 index 0000000..06b760b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fdiml.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_fdiml.c> +long_double_symbol (libm, __fdiml, fdiml); diff --git a/sysdeps/ieee754/ldbl-opt/s_finite.c b/sysdeps/ieee754/ldbl-opt/s_finite.c new file mode 100644 index 0000000..897dbfd --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_finite.c @@ -0,0 +1,18 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_finite.c> +weak_alias (__finite, ___finite) +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __finite, __finitel, GLIBC_2_1); +# endif +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, ___finite, finitel, GLIBC_2_0); +# endif +#else +# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libm, __finite, __finitel, GLIBC_2_0); +# endif +# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, ___finite, finitel, GLIBC_2_0); +# endif +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_floor.c b/sysdeps/ieee754/ldbl-opt/s_floor.c new file mode 100644 index 0000000..7797944 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_floor.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_floor.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __floor, floorl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fma.c b/sysdeps/ieee754/ldbl-opt/s_fma.c new file mode 100644 index 0000000..2ee7214 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fma.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/s_fma.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fma, fmal, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fmal.c b/sysdeps/ieee754/ldbl-opt/s_fmal.c new file mode 100644 index 0000000..bd12dab --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fmal.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_fmal.c> +long_double_symbol (libm, __fmal, fmal); diff --git a/sysdeps/ieee754/ldbl-opt/s_fmax.c b/sysdeps/ieee754/ldbl-opt/s_fmax.c new file mode 100644 index 0000000..11e7591 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fmax.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/s_fmax.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fmax, fmaxl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fmaxl.c b/sysdeps/ieee754/ldbl-opt/s_fmaxl.c new file mode 100644 index 0000000..98221b2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fmaxl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_fmaxl.c> +long_double_symbol (libm, __fmaxl, fmaxl); diff --git a/sysdeps/ieee754/ldbl-opt/s_fmin.c b/sysdeps/ieee754/ldbl-opt/s_fmin.c new file mode 100644 index 0000000..c3fe44d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fmin.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/s_fmin.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fmin, fminl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_fminl.c b/sysdeps/ieee754/ldbl-opt/s_fminl.c new file mode 100644 index 0000000..9bfdc7a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_fminl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_fminl.c> +long_double_symbol (libm, __fminl, fminl); diff --git a/sysdeps/ieee754/ldbl-opt/s_frexp.c b/sysdeps/ieee754/ldbl-opt/s_frexp.c new file mode 100644 index 0000000..59ce352 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_frexp.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_frexp.c> +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __frexp, frexpl, GLIBC_2_0); +# endif +#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __frexp, frexpl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ilogb.c b/sysdeps/ieee754/ldbl-opt/s_ilogb.c new file mode 100644 index 0000000..3a6ccbd --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ilogb.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_ilogb.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __ilogb, ilogbl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_isinf.c b/sysdeps/ieee754/ldbl-opt/s_isinf.c new file mode 100644 index 0000000..401c8b1 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_isinf.c @@ -0,0 +1,8 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_isinf.c> +#ifndef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __isinf, __isinfl, GLIBC_2_0); +compat_symbol (libc, isinf, isinfl, GLIBC_2_0); +# endif +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_isnan.c b/sysdeps/ieee754/ldbl-opt/s_isnan.c new file mode 100644 index 0000000..164b800 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_isnan.c @@ -0,0 +1,8 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_isnan.c> +#ifndef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0); +compat_symbol (libc, isnan, isnanl, GLIBC_2_0); +# endif +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ldexp.c b/sysdeps/ieee754/ldbl-opt/s_ldexp.c new file mode 100644 index 0000000..f0f6519 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ldexp.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#include <math/s_ldexp.c> +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __ldexp, ldexpl, GLIBC_2_0); +# endif +#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __ldexp, ldexpl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_ldexpl.c b/sysdeps/ieee754/ldbl-opt/s_ldexpl.c new file mode 100644 index 0000000..d4636b9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_ldexpl.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_ldexpl.c> +#ifdef IS_IN_libm +long_double_symbol (libm, __ldexpl, ldexpl); +#else +long_double_symbol (libc, __ldexpl, ldexpl); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_llrint.c b/sysdeps/ieee754/ldbl-opt/s_llrint.c new file mode 100644 index 0000000..e631197 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_llrint.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_llrint.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __llrint, llrintl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_llround.c b/sysdeps/ieee754/ldbl-opt/s_llround.c new file mode 100644 index 0000000..36c7e6e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_llround.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_llround.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __llround, llroundl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_log1p.c b/sysdeps/ieee754/ldbl-opt/s_log1p.c new file mode 100644 index 0000000..495fa32 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_log1p.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_log1p.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __log1p, log1pl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_logb.c b/sysdeps/ieee754/ldbl-opt/s_logb.c new file mode 100644 index 0000000..4d7a6db --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_logb.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_logb.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __logb, logbl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_lrint.c b/sysdeps/ieee754/ldbl-opt/s_lrint.c new file mode 100644 index 0000000..b7af812 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_lrint.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_lrint.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __lrint, lrintl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_lround.c b/sysdeps/ieee754/ldbl-opt/s_lround.c new file mode 100644 index 0000000..f3a27fa --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_lround.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_lround.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __lround, lroundl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_modf.c b/sysdeps/ieee754/ldbl-opt/s_modf.c new file mode 100644 index 0000000..2263811 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_modf.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_modf.c> +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __modf, modfl, GLIBC_2_0); +# endif +#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __modf, modfl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_nan.c b/sysdeps/ieee754/ldbl-opt/s_nan.c new file mode 100644 index 0000000..418aad2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_nan.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/s_nan.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __nan, nanl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_nanl.c b/sysdeps/ieee754/ldbl-opt/s_nanl.c new file mode 100644 index 0000000..9496e0b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_nanl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_nanl.c> +long_double_symbol (libm, __nanl, nanl); diff --git a/sysdeps/ieee754/ldbl-opt/s_nearbyint.c b/sysdeps/ieee754/ldbl-opt/s_nearbyint.c new file mode 100644 index 0000000..a8b7973 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_nearbyint.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_nearbyint.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __nearbyint, nearbyintl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_nextafter.c b/sysdeps/ieee754/ldbl-opt/s_nextafter.c new file mode 100644 index 0000000..78e2c0f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_nextafter.c @@ -0,0 +1,12 @@ +#include <math_ldbl_opt.h> +#include <math/s_nextafter.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __nextafter, nextafterl, GLIBC_2_0); +#endif +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +strong_alias (__nextafter, __nexttowardd) +strong_alias (__nextafter, __nexttowardld) +#undef nexttoward +compat_symbol (libm, __nexttowardd, nexttoward, GLIBC_2_1); +compat_symbol (libm, __nexttowardld, nexttowardl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c b/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c new file mode 100644 index 0000000..68027f2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c @@ -0,0 +1,85 @@ +/* Single precision version of nexttoward.c. + Conversion to IEEE single float by Jakub Jelinek, jj@ultra.linux.cz. */ +/* + * ==================================================== + * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + * + * Developed at SunPro, a Sun Microsystems, Inc. business. + * Permission to use, copy, modify, and distribute this + * software is freely granted, provided that this notice + * is preserved. + * ==================================================== + */ + +/* IEEE functions + * __nexttowardfd(x,y) + * return the next machine floating-point number of x in the + * direction toward y. + * This is for machines which use different binary type for double and + * long double conditionally, y is long double equal to double. + * Special cases: + */ + +#include <math.h> +#include <math_private.h> +#include <math_ldbl_opt.h> +#include <float.h> + +float __nldbl_nexttowardf(float x, double y); + +float __nldbl_nexttowardf(float x, double y) +{ + int32_t hx,hy,ix,iy; + u_int32_t ly; + + GET_FLOAT_WORD(hx,x); + EXTRACT_WORDS(hy,ly,y); + ix = hx&0x7fffffff; /* |x| */ + iy = hy&0x7fffffff; /* |y| */ + + if((ix>0x7f800000) || /* x is nan */ + ((iy>=0x7ff00000)&&((iy-0x7ff00000)|ly)!=0)) /* y is nan */ + return x+y; + if((double) x==y) return y; /* x=y, return y */ + if(ix==0) { /* x == 0 */ + float u; + SET_FLOAT_WORD(x,(u_int32_t)(hy&0x80000000)|1);/* return +-minsub*/ + u = math_opt_barrier (x); + u = u * u; + math_force_eval (u); /* raise underflow flag */ + return x; + } + if(hx>=0) { /* x > 0 */ + if(hy<0||(ix>>23)>(iy>>20)-0x380 + || ((ix>>23)==(iy>>20)-0x380 + && (ix&0x7fffff)>(((hy<<3)|(ly>>29))&0x7fffff))) /* x > y, x -= ulp */ + hx -= 1; + else /* x < y, x += ulp */ + hx += 1; + } else { /* x < 0 */ + if(hy>=0||(ix>>23)>(iy>>20)-0x380 + || ((ix>>23)==(iy>>20)-0x380 + && (ix&0x7fffff)>(((hy<<3)|(ly>>29))&0x7fffff))) /* x < y, x -= ulp */ + hx -= 1; + else /* x > y, x += ulp */ + hx += 1; + } + hy = hx&0x7f800000; + if(hy>=0x7f800000) { + x = x+x; /* overflow */ + if (FLT_EVAL_METHOD != 0) + /* Force conversion to float. */ + asm ("" : "+m"(x)); + return x; + } + if(hy<0x00800000) { + float u = x*x; /* underflow */ + math_force_eval (u); /* raise underflow flag */ + } + SET_FLOAT_WORD(x,hx); + return x; +} + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __nldbl_nexttowardf, nexttowardf, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_remquo.c b/sysdeps/ieee754/ldbl-opt/s_remquo.c new file mode 100644 index 0000000..9f3d7ba --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_remquo.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_remquo.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __remquo, remquol, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_rint.c b/sysdeps/ieee754/ldbl-opt/s_rint.c new file mode 100644 index 0000000..d9b156e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_rint.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_rint.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __rint, rintl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_round.c b/sysdeps/ieee754/ldbl-opt/s_round.c new file mode 100644 index 0000000..edff2f0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_round.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_round.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __round, roundl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_scalbln.c b/sysdeps/ieee754/ldbl-opt/s_scalbln.c new file mode 100644 index 0000000..2398bba --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_scalbln.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_scalbln.c> +#ifdef IS_IN_libm +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __scalbln, scalblnl, GLIBC_2_1); +#endif +#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_1) +compat_symbol (libc, __scalbln, scalblnl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_scalbn.c b/sysdeps/ieee754/ldbl-opt/s_scalbn.c new file mode 100644 index 0000000..094735e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_scalbn.c @@ -0,0 +1,9 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_scalbn.c> +#ifdef IS_IN_libm +# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __scalbn, scalbnl, GLIBC_2_0); +# endif +#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +compat_symbol (libc, __scalbn, scalbnl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_significand.c b/sysdeps/ieee754/ldbl-opt/s_significand.c new file mode 100644 index 0000000..5287c09 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_significand.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/s_significand.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __significand, significandl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_significandl.c b/sysdeps/ieee754/ldbl-opt/s_significandl.c new file mode 100644 index 0000000..9339b47 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_significandl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/s_significandl.c> +long_double_symbol (libm, __significandl, significandl); diff --git a/sysdeps/ieee754/ldbl-opt/s_sin.c b/sysdeps/ieee754/ldbl-opt/s_sin.c new file mode 100644 index 0000000..a11d5a3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_sin.c @@ -0,0 +1,10 @@ +/* dbl-64/s_sin.c uses NAN and sincos identifiers internally. */ +#define sincos sincos_disable +#include <math_ldbl_opt.h> +#undef NAN +#undef sincos +#include <sysdeps/ieee754/dbl-64/s_sin.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __sin, sinl, GLIBC_2_0); +compat_symbol (libm, __cos, cosl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_sincos.c b/sysdeps/ieee754/ldbl-opt/s_sincos.c new file mode 100644 index 0000000..6d2a48f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_sincos.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_sincos.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __sincos, sincosl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_tan.c b/sysdeps/ieee754/ldbl-opt/s_tan.c new file mode 100644 index 0000000..6b0fec0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_tan.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_tan.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, tan, tanl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_tanh.c b/sysdeps/ieee754/ldbl-opt/s_tanh.c new file mode 100644 index 0000000..e763bbd --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_tanh.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_tanh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __tanh, tanhl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/s_trunc.c b/sysdeps/ieee754/ldbl-opt/s_trunc.c new file mode 100644 index 0000000..9d90a2b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/s_trunc.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/s_trunc.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __trunc, truncl, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_acos.c b/sysdeps/ieee754/ldbl-opt/w_acos.c new file mode 100644 index 0000000..2934041 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_acos.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_acos.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __acos, acosl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_acosh.c b/sysdeps/ieee754/ldbl-opt/w_acosh.c new file mode 100644 index 0000000..7f7fa14 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_acosh.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_acosh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __acosh, acoshl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_acoshl.c b/sysdeps/ieee754/ldbl-opt/w_acoshl.c new file mode 100644 index 0000000..6243c2a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_acoshl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_acoshl.c> +long_double_symbol (libm, __acoshl, acoshl); diff --git a/sysdeps/ieee754/ldbl-opt/w_acosl.c b/sysdeps/ieee754/ldbl-opt/w_acosl.c new file mode 100644 index 0000000..8b6e890 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_acosl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_acosl.c> +long_double_symbol (libm, __acosl, acosl); diff --git a/sysdeps/ieee754/ldbl-opt/w_asin.c b/sysdeps/ieee754/ldbl-opt/w_asin.c new file mode 100644 index 0000000..5e1d70f --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_asin.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_asin.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __asin, asinl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_asinl.c b/sysdeps/ieee754/ldbl-opt/w_asinl.c new file mode 100644 index 0000000..a58a224 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_asinl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_asinl.c> +long_double_symbol (libm, __asinl, asinl); diff --git a/sysdeps/ieee754/ldbl-opt/w_atan2.c b/sysdeps/ieee754/ldbl-opt/w_atan2.c new file mode 100644 index 0000000..f1d1501 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_atan2.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_atan2.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __atan2, atan2l, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_atan2l.c b/sysdeps/ieee754/ldbl-opt/w_atan2l.c new file mode 100644 index 0000000..01431ef --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_atan2l.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_atan2l.c> +long_double_symbol (libm, __atan2l, atan2l); diff --git a/sysdeps/ieee754/ldbl-opt/w_atanh.c b/sysdeps/ieee754/ldbl-opt/w_atanh.c new file mode 100644 index 0000000..b4cab87 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_atanh.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_atanh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __atanh, atanhl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_atanhl.c b/sysdeps/ieee754/ldbl-opt/w_atanhl.c new file mode 100644 index 0000000..0dbc114 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_atanhl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_atanhl.c> +long_double_symbol (libm, __atanhl, atanhl); diff --git a/sysdeps/ieee754/ldbl-opt/w_cosh.c b/sysdeps/ieee754/ldbl-opt/w_cosh.c new file mode 100644 index 0000000..a6f56cf --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_cosh.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_cosh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __cosh, coshl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_coshl.c b/sysdeps/ieee754/ldbl-opt/w_coshl.c new file mode 100644 index 0000000..8c7dccb --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_coshl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_coshl.c> +long_double_symbol (libm, __coshl, coshl); diff --git a/sysdeps/ieee754/ldbl-opt/w_drem.c b/sysdeps/ieee754/ldbl-opt/w_drem.c new file mode 100644 index 0000000..788a5d2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_drem.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_drem.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __drem, dreml, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_dreml.c b/sysdeps/ieee754/ldbl-opt/w_dreml.c new file mode 100644 index 0000000..d14d7e2 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_dreml.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_dreml.c> +long_double_symbol (libm, __dreml, dreml); diff --git a/sysdeps/ieee754/ldbl-opt/w_exp.c b/sysdeps/ieee754/ldbl-opt/w_exp.c new file mode 100644 index 0000000..61fcfcc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_exp.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <sysdeps/ieee754/dbl-64/w_exp.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __exp, expl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_exp10.c b/sysdeps/ieee754/ldbl-opt/w_exp10.c new file mode 100644 index 0000000..990c48e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_exp10.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#include <math/w_exp10.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __exp10, exp10l, GLIBC_2_1); +compat_symbol (libm, __pow10, pow10l, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_exp10l.c b/sysdeps/ieee754/ldbl-opt/w_exp10l.c new file mode 100644 index 0000000..e06dfb5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_exp10l.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_exp10l.c> +long_double_symbol (libm, __exp10l, exp10l); +long_double_symbol (libm, __pow10l, pow10l); diff --git a/sysdeps/ieee754/ldbl-opt/w_fmod.c b/sysdeps/ieee754/ldbl-opt/w_fmod.c new file mode 100644 index 0000000..81ad505 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_fmod.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_fmod.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __fmod, fmodl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_fmodl.c b/sysdeps/ieee754/ldbl-opt/w_fmodl.c new file mode 100644 index 0000000..2a534a3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_fmodl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_fmodl.c> +long_double_symbol (libm, __fmodl, fmodl); diff --git a/sysdeps/ieee754/ldbl-opt/w_hypot.c b/sysdeps/ieee754/ldbl-opt/w_hypot.c new file mode 100644 index 0000000..e1cf1ff --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_hypot.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_hypot.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __hypot, hypotl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_hypotl.c b/sysdeps/ieee754/ldbl-opt/w_hypotl.c new file mode 100644 index 0000000..6c46bd4 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_hypotl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_hypotl.c> +long_double_symbol (libm, __hypotl, hypotl); diff --git a/sysdeps/ieee754/ldbl-opt/w_j0.c b/sysdeps/ieee754/ldbl-opt/w_j0.c new file mode 100644 index 0000000..5c78aff --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_j0.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#include <math/w_j0.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, j0, j0l, GLIBC_2_0); +compat_symbol (libm, y0, y0l, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_j0l.c b/sysdeps/ieee754/ldbl-opt/w_j0l.c new file mode 100644 index 0000000..767a1bc --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_j0l.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_j0l.c> +long_double_symbol (libm, __j0l, j0l); +long_double_symbol (libm, __y0l, y0l); diff --git a/sysdeps/ieee754/ldbl-opt/w_j1.c b/sysdeps/ieee754/ldbl-opt/w_j1.c new file mode 100644 index 0000000..ed3dbc0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_j1.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#include <math/w_j1.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, j1, j1l, GLIBC_2_0); +compat_symbol (libm, y1, y1l, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_j1l.c b/sysdeps/ieee754/ldbl-opt/w_j1l.c new file mode 100644 index 0000000..946c364 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_j1l.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_j1l.c> +long_double_symbol (libm, __j1l, j1l); +long_double_symbol (libm, __y1l, y1l); diff --git a/sysdeps/ieee754/ldbl-opt/w_jn.c b/sysdeps/ieee754/ldbl-opt/w_jn.c new file mode 100644 index 0000000..7a7e0d4 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_jn.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#include <math/w_jn.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, jn, jnl, GLIBC_2_0); +compat_symbol (libm, yn, ynl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_jnl.c b/sysdeps/ieee754/ldbl-opt/w_jnl.c new file mode 100644 index 0000000..5219543 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_jnl.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_jnl.c> +long_double_symbol (libm, __jnl, jnl); +long_double_symbol (libm, __ynl, ynl); diff --git a/sysdeps/ieee754/ldbl-opt/w_lgamma.c b/sysdeps/ieee754/ldbl-opt/w_lgamma.c new file mode 100644 index 0000000..ef801c5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_lgamma.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#include <math/w_lgamma.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __lgamma, lgammal, GLIBC_2_0); +compat_symbol (libm, __gamma, gammal, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_lgamma_r.c b/sysdeps/ieee754/ldbl-opt/w_lgamma_r.c new file mode 100644 index 0000000..eeab6a6 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_lgamma_r.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_lgamma_r.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __lgamma_r, lgammal_r, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_lgammal.c b/sysdeps/ieee754/ldbl-opt/w_lgammal.c new file mode 100644 index 0000000..9de7ec8 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_lgammal.c @@ -0,0 +1,6 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_lgammal.c> +long_double_symbol (libm, __lgammal, lgammal); +long_double_symbol (libm, __gammal, gammal); diff --git a/sysdeps/ieee754/ldbl-opt/w_lgammal_r.c b/sysdeps/ieee754/ldbl-opt/w_lgammal_r.c new file mode 100644 index 0000000..2545975 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_lgammal_r.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_lgammal_r.c> +long_double_symbol (libm, __lgammal_r, lgammal_r); diff --git a/sysdeps/ieee754/ldbl-opt/w_log.c b/sysdeps/ieee754/ldbl-opt/w_log.c new file mode 100644 index 0000000..bde1e31 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_log.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_log.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __log, logl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_log10.c b/sysdeps/ieee754/ldbl-opt/w_log10.c new file mode 100644 index 0000000..74e7168 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_log10.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_log10.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __log10, log10l, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_log10l.c b/sysdeps/ieee754/ldbl-opt/w_log10l.c new file mode 100644 index 0000000..9c936e3 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_log10l.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_log10l.c> +long_double_symbol (libm, __log10l, log10l); diff --git a/sysdeps/ieee754/ldbl-opt/w_log2.c b/sysdeps/ieee754/ldbl-opt/w_log2.c new file mode 100644 index 0000000..9b9b45b --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_log2.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_log2.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __log2, log2l, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_log2l.c b/sysdeps/ieee754/ldbl-opt/w_log2l.c new file mode 100644 index 0000000..c859682 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_log2l.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_log2l.c> +long_double_symbol (libm, __log2l, log2l); diff --git a/sysdeps/ieee754/ldbl-opt/w_logl.c b/sysdeps/ieee754/ldbl-opt/w_logl.c new file mode 100644 index 0000000..c2354a0 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_logl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_logl.c> +long_double_symbol (libm, __logl, logl); diff --git a/sysdeps/ieee754/ldbl-opt/w_pow.c b/sysdeps/ieee754/ldbl-opt/w_pow.c new file mode 100644 index 0000000..2d98fb9 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_pow.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_pow.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __pow, powl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_powl.c b/sysdeps/ieee754/ldbl-opt/w_powl.c new file mode 100644 index 0000000..85b8927 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_powl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_powl.c> +long_double_symbol (libm, __powl, powl); diff --git a/sysdeps/ieee754/ldbl-opt/w_remainder.c b/sysdeps/ieee754/ldbl-opt/w_remainder.c new file mode 100644 index 0000000..94d9893 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_remainder.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_remainder.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __remainder, remainderl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_remainderl.c b/sysdeps/ieee754/ldbl-opt/w_remainderl.c new file mode 100644 index 0000000..e450a25 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_remainderl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_remainderl.c> +long_double_symbol (libm, __remainderl, remainderl); diff --git a/sysdeps/ieee754/ldbl-opt/w_scalb.c b/sysdeps/ieee754/ldbl-opt/w_scalb.c new file mode 100644 index 0000000..e2ac601 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_scalb.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_scalb.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __scalb, scalbl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_scalbl.c b/sysdeps/ieee754/ldbl-opt/w_scalbl.c new file mode 100644 index 0000000..f3d3901 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_scalbl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_scalbl.c> +long_double_symbol (libm, __scalbl, scalbl); diff --git a/sysdeps/ieee754/ldbl-opt/w_sinh.c b/sysdeps/ieee754/ldbl-opt/w_sinh.c new file mode 100644 index 0000000..a5400b5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_sinh.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_sinh.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __sinh, sinhl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_sinhl.c b/sysdeps/ieee754/ldbl-opt/w_sinhl.c new file mode 100644 index 0000000..b94f4ec --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_sinhl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_sinhl.c> +long_double_symbol (libm, __sinhl, sinhl); diff --git a/sysdeps/ieee754/ldbl-opt/w_sqrt.c b/sysdeps/ieee754/ldbl-opt/w_sqrt.c new file mode 100644 index 0000000..ca2ba06 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_sqrt.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_sqrt.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __sqrt, sqrtl, GLIBC_2_0); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_sqrtl.c b/sysdeps/ieee754/ldbl-opt/w_sqrtl.c new file mode 100644 index 0000000..609f5bf --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_sqrtl.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_sqrtl.c> +long_double_symbol (libm, __sqrtl, sqrtl); diff --git a/sysdeps/ieee754/ldbl-opt/w_tgamma.c b/sysdeps/ieee754/ldbl-opt/w_tgamma.c new file mode 100644 index 0000000..cce9f34 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_tgamma.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#include <math/w_tgamma.c> +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __tgamma, tgammal, GLIBC_2_1); +#endif diff --git a/sysdeps/ieee754/ldbl-opt/w_tgammal.c b/sysdeps/ieee754/ldbl-opt/w_tgammal.c new file mode 100644 index 0000000..c3c511d --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/w_tgammal.c @@ -0,0 +1,5 @@ +#include <math_ldbl_opt.h> +#undef weak_alias +#define weak_alias(n,a) +#include <math/w_tgammal.c> +long_double_symbol (libm, __tgammal, tgammal); |