summaryrefslogtreecommitdiffstats
path: root/libm
diff options
context:
space:
mode:
Diffstat (limited to 'libm')
-rw-r--r--libm/Makefile134
-rw-r--r--libm/Makefile.in14
-rw-r--r--libm/e_acos.c4
-rw-r--r--libm/e_acosh.c4
-rw-r--r--libm/e_asin.c4
-rw-r--r--libm/e_atan2.c4
-rw-r--r--libm/e_atanh.c4
-rw-r--r--libm/e_cosh.c4
-rw-r--r--libm/e_exp.c4
-rw-r--r--libm/e_fmod.c4
-rw-r--r--libm/e_gamma.c4
-rw-r--r--libm/e_gamma_r.c4
-rw-r--r--libm/e_hypot.c4
-rw-r--r--libm/e_j0.c8
-rw-r--r--libm/e_j1.c8
-rw-r--r--libm/e_jn.c8
-rw-r--r--libm/e_lgamma.c4
-rw-r--r--libm/e_lgamma_r.c4
-rw-r--r--libm/e_log.c4
-rw-r--r--libm/e_log10.c4
-rw-r--r--libm/e_pow.c4
-rw-r--r--libm/e_rem_pio2.c4
-rw-r--r--libm/e_remainder.c4
-rw-r--r--libm/e_scalb.c8
-rw-r--r--libm/e_sinh.c4
-rw-r--r--libm/e_sqrt.c4
-rw-r--r--libm/float_wrappers.c14
-rw-r--r--libm/k_cos.c4
-rw-r--r--libm/k_rem_pio2.c4
-rw-r--r--libm/k_sin.c4
-rw-r--r--libm/k_tan.c4
31 files changed, 83 insertions, 207 deletions
diff --git a/libm/Makefile b/libm/Makefile
index dc65064f8..c8dc9b466 100644
--- a/libm/Makefile
+++ b/libm/Makefile
@@ -1,129 +1,13 @@
-# Makefile for uClibc's math library
+# Makefile for uClibc
#
-# Copyright (C) 2000-2002 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
#
-# The routines included in this math library are derived from the
-# math library for Apple's MacOS X/Darwin math library, which was
-# itself swiped from FreeBSD. The original copyright information
-# is as follows:
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
#
-# 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.
-#
-# It has been ported to work with uClibc and generally behave
-# by Erik Andersen <andersen@codepoet.org>
-#
-# This program is free software; you can redistribute it and/or modify it under
-# the terms of the GNU Library General Public License as published by the Free
-# Software Foundation; either version 2 of the License, or (at your option) any
-# later version.
-#
-# This program 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 Library General Public License for more
-# details.
-#
-# You should have received a copy of the GNU Library General Public License
-# along with this program; if not, write to the Free Software Foundation, Inc.,
-# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-TOPDIR=../
-include $(TOPDIR)Rules.mak
-
-CFLAGS+=$(SSP_ALL_CFLAGS)
-
-CFLAGS+=-D_IEEE_LIBM -D_ISOC99_SOURCE -D_SVID_SOURCE
-
-LIB_NAME=libm
-AR_LIB_NAME=$(TOPDIR)lib/$(LIB_NAME).a
-SO_LIB_NAME=$(TOPDIR)lib/$(LIB_NAME).so
-SO_FULL_NAME=$(LIB_NAME)-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
-
-FL_MSRC = float_wrappers.c
-
-ifeq ($(strip $(DO_C99_MATH)),y)
-CSRC = e_acos.c e_acosh.c e_asin.c e_atan2.c e_atanh.c e_cosh.c\
- e_exp.c e_fmod.c e_gamma.c e_gamma_r.c e_hypot.c e_j0.c\
- e_j1.c e_jn.c e_lgamma.c e_lgamma_r.c e_log.c e_log10.c\
- e_pow.c e_remainder.c e_rem_pio2.c e_scalb.c e_sinh.c\
- e_sqrt.c k_cos.c k_rem_pio2.c k_sin.c k_standard.c k_tan.c\
- s_asinh.c s_atan.c s_cbrt.c s_ceil.c s_copysign.c s_cos.c\
- s_erf.c s_expm1.c s_fabs.c s_finite.c s_floor.c s_frexp.c\
- s_ilogb.c s_ldexp.c s_lib_version.c s_log1p.c s_logb.c\
- s_matherr.c s_modf.c s_nextafter.c s_rint.c s_scalbn.c\
- s_signgam.c s_significand.c s_sin.c s_tan.c s_tanh.c\
- w_acos.c w_acosh.c w_asin.c w_atan2.c w_atanh.c w_cabs.c\
- w_cosh.c w_drem.c w_exp.c w_fmod.c w_gamma.c w_gamma_r.c\
- w_hypot.c w_j0.c w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c\
- w_log.c w_log10.c w_pow.c w_remainder.c w_scalb.c w_sinh.c\
- w_sqrt.c fpmacros.c nan.c s_lround.c s_llround.c s_round.c
-FL_MOBJ = acosf.o acoshf.o asinf.o asinhf.o atan2f.o atanf.o atanhf.o cbrtf.o \
- ceilf.o copysignf.o cosf.o coshf.o erfcf.o erff.o exp2f.o expf.o \
- expm1f.o fabsf.o fdimf.o floorf.o fmaf.o fmaxf.o fminf.o fmodf.o \
- frexpf.o hypotf.o ilogbf.o ldexpf.o lgammaf.o log10f.o log1pf.o \
- log2f.o logbf.o logf.o lrintf.o lroundf.o modff.o nearbyintf.o \
- nextafterf.o powf.o remainderf.o remquof.o rintf.o roundf.o \
- scalblnf.o scalbnf.o sinf.o sinhf.o sqrtf.o tanf.o tanhf.o \
- tgammaf.o truncf.o
-else
-# This list of math functions was taken from POSIX/IEEE 1003.1b-1993
-CSRC = w_acos.c w_asin.c s_atan.c w_atan2.c s_ceil.c s_cos.c \
- w_cosh.c w_exp.c s_fabs.c s_floor.c w_fmod.c s_frexp.c \
- s_ldexp.c w_log.c w_log10.c s_modf.c w_pow.c s_sin.c \
- w_sinh.c w_sqrt.c s_tan.c s_tanh.c
-CSRC+= s_expm1.c s_scalbn.c s_copysign.c e_acos.c e_asin.c e_atan2.c \
- k_cos.c e_cosh.c e_exp.c e_fmod.c e_log.c e_log10.c e_pow.c \
- k_sin.c e_sinh.c e_sqrt.c k_tan.c e_rem_pio2.c k_rem_pio2.c \
- s_finite.c
-# We'll add sqrtf to avoid problems with libstdc++
-FL_MOBJ = sqrtf.o
-endif
-
-ifeq ($(strip $(HAS_FPU)),y)
-ifeq ($(strip $(DO_C99_MATH)),y)
-ARCH_CSRC=$(wildcard $(TARGET_ARCH)/*.c)
-ARCH_OBJS=$(patsubst %.c,%.o, $(ARCH_CSRC))
-endif
-endif
-
-COBJS=$(patsubst %.c,%.o, $(CSRC))
-OBJS=$(COBJS) $(FL_MOBJ)
-
-ifeq ($(strip $(HAVE_SHARED)),y)
-all: $(SO_LIB_NAME)
-else
-all: $(AR_LIB_NAME)
-endif
-
-$(AR_LIB_NAME): $(OBJS) $(ARCH_OBJS)
- $(INSTALL) -d $(TOPDIR)lib
- $(RM) $(AR_LIB_NAME)
- $(AR) $(ARFLAGS) $(AR_LIB_NAME) $(OBJS)
- $(AR) $(ARFLAGS) $(AR_LIB_NAME) $(ARCH_OBJS)
-
-$(SO_LIB_NAME): $(AR_LIB_NAME)
- $(RM) $(TOPDIR)lib/$(SO_FULL_NAME) $(SO_LIB_NAME).$(MAJOR_VERSION) $(SO_LIB_NAME)
- $(LD) $(LDFLAGS) -soname=$(LIB_NAME).so.$(MAJOR_VERSION) \
- -o $(TOPDIR)lib/$(SO_FULL_NAME) --whole-archive $(AR_LIB_NAME) \
- --no-whole-archive $(TOPDIR)libc/misc/internals/interp.o \
- -L$(TOPDIR)lib -lc $(LDADD_LIBFLOAT) $(LIBGCC)
- $(LN) -sf $(SO_FULL_NAME) $(SO_LIB_NAME).$(MAJOR_VERSION)
- $(LN) -sf $(SO_FULL_NAME) $(SO_LIB_NAME)
-
-$(COBJS) $(ARCH_OBJS): %.o : %.c
- $(CC) $(CFLAGS) -c $< -o $@
- $(STRIPTOOL) -x -R .note -R .comment $*.o
-
-$(FL_MOBJ): $(FL_MSRC)
- $(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
- $(STRIPTOOL) -x -R .note -R .comment $*.o
-
-tags:
- ctags -R
-clean:
- $(RM) *.o */*.o *~ core
+top_srcdir=../
+top_builddir=../
+include $(top_builddir)Rules.mak
+all: libs
+include Makefile.in
+include $(top_srcdir)Makerules
diff --git a/libm/Makefile.in b/libm/Makefile.in
index 4a021fccf..19211f5ff 100644
--- a/libm/Makefile.in
+++ b/libm/Makefile.in
@@ -117,7 +117,11 @@ libm_DEF := $(patsubst %,-DL_%,$(subst .o,,$(notdir $(libm_MOBJ))))
libm_OBJS := $(libm_OBJ) $(libm_MOBJ)
+ifeq ($(DOPIC),y)
+libm-a-y += $(libm_OBJS:.o=.os)
+else
libm-a-y += $(libm_OBJS)
+endif
libm-so-y += $(libm_OBJS:.o=.os)
CFLAGS-multi-y := $(libm_DEF)
@@ -128,7 +132,11 @@ lib-a-$(UCLIBC_HAS_FLOATS) += $(top_builddir)lib/libm.a
lib-so-$(UCLIBC_HAS_FLOATS) += $(top_builddir)lib/libm.so
objclean-y += libm_clean
-$(top_builddir)lib/libm.so: $(libm_OUT)/libm_so.a libc-y
+ifeq ($(DOPIC),y)
+$(top_builddir)lib/libm.so: $(top_builddir)lib/libm.a $(libc)
+else
+$(top_builddir)lib/libm.so: $(libm_OUT)/libm_so.a $(libc)
+endif
$(call link.so,$(libm_FULL_NAME),$(MAJOR_VERSION))
$(libm_OUT)/libm_so.a: $(libm-so-y)
@@ -136,11 +144,7 @@ $(libm_OUT)/libm_so.a: $(libm-so-y)
$(do_strip)
$(do_ar)
-ifeq ($(DOPIC),y)
-$(top_builddir)lib/libm.a: $(libm-a-y:.o=.os)
-else
$(top_builddir)lib/libm.a: $(libm-a-y)
-endif
$(Q)$(INSTALL) -d $(dir $@)
$(Q)$(RM) $@
$(do_strip)
diff --git a/libm/e_acos.c b/libm/e_acos.c
index 9f6305e1e..265619325 100644
--- a/libm/e_acos.c
+++ b/libm/e_acos.c
@@ -62,9 +62,9 @@ qS3 = -6.88283971605453293030e-01, /* 0xBFE6066C, 0x1B8D0159 */
qS4 = 7.70381505559019352791e-02; /* 0x3FB3B8C5, 0xB12E9282 */
#ifdef __STDC__
- double __ieee754_acos(double x)
+ double attribute_hidden __ieee754_acos(double x)
#else
- double __ieee754_acos(x)
+ double attribute_hidden __ieee754_acos(x)
double x;
#endif
{
diff --git a/libm/e_acosh.c b/libm/e_acosh.c
index 3b3c6251e..258ffa549 100644
--- a/libm/e_acosh.c
+++ b/libm/e_acosh.c
@@ -40,9 +40,9 @@ one = 1.0,
ln2 = 6.93147180559945286227e-01; /* 0x3FE62E42, 0xFEFA39EF */
#ifdef __STDC__
- double __ieee754_acosh(double x)
+ double attribute_hidden __ieee754_acosh(double x)
#else
- double __ieee754_acosh(x)
+ double attribute_hidden __ieee754_acosh(x)
double x;
#endif
{
diff --git a/libm/e_asin.c b/libm/e_asin.c
index d7a785350..f9b16da71 100644
--- a/libm/e_asin.c
+++ b/libm/e_asin.c
@@ -71,9 +71,9 @@ qS3 = -6.88283971605453293030e-01, /* 0xBFE6066C, 0x1B8D0159 */
qS4 = 7.70381505559019352791e-02; /* 0x3FB3B8C5, 0xB12E9282 */
#ifdef __STDC__
- double __ieee754_asin(double x)
+ double attribute_hidden __ieee754_asin(double x)
#else
- double __ieee754_asin(x)
+ double attribute_hidden __ieee754_asin(x)
double x;
#endif
{
diff --git a/libm/e_atan2.c b/libm/e_atan2.c
index 8bfc79232..594b9a16f 100644
--- a/libm/e_atan2.c
+++ b/libm/e_atan2.c
@@ -57,9 +57,9 @@ pi = 3.1415926535897931160E+00, /* 0x400921FB, 0x54442D18 */
pi_lo = 1.2246467991473531772E-16; /* 0x3CA1A626, 0x33145C07 */
#ifdef __STDC__
- double __ieee754_atan2(double y, double x)
+ double attribute_hidden __ieee754_atan2(double y, double x)
#else
- double __ieee754_atan2(y,x)
+ double attribute_hidden __ieee754_atan2(y,x)
double y,x;
#endif
{
diff --git a/libm/e_atanh.c b/libm/e_atanh.c
index d199a05cc..7c8bbc14f 100644
--- a/libm/e_atanh.c
+++ b/libm/e_atanh.c
@@ -48,9 +48,9 @@ static double zero = 0.0;
#endif
#ifdef __STDC__
- double __ieee754_atanh(double x)
+ double attribute_hidden __ieee754_atanh(double x)
#else
- double __ieee754_atanh(x)
+ double attribute_hidden __ieee754_atanh(x)
double x;
#endif
{
diff --git a/libm/e_cosh.c b/libm/e_cosh.c
index 88499684a..5558a9642 100644
--- a/libm/e_cosh.c
+++ b/libm/e_cosh.c
@@ -45,9 +45,9 @@ static double one = 1.0, half=0.5, huge = 1.0e300;
#endif
#ifdef __STDC__
- double __ieee754_cosh(double x)
+ double attribute_hidden __ieee754_cosh(double x)
#else
- double __ieee754_cosh(x)
+ double attribute_hidden __ieee754_cosh(x)
double x;
#endif
{
diff --git a/libm/e_exp.c b/libm/e_exp.c
index f4d832bbb..f9c5371d9 100644
--- a/libm/e_exp.c
+++ b/libm/e_exp.c
@@ -104,9 +104,9 @@ P5 = 4.13813679705723846039e-08; /* 0x3E663769, 0x72BEA4D0 */
#ifdef __STDC__
- double __ieee754_exp(double x) /* default IEEE double exp */
+ double attribute_hidden __ieee754_exp(double x) /* default IEEE double exp */
#else
- double __ieee754_exp(x) /* default IEEE double exp */
+ double attribute_hidden __ieee754_exp(x) /* default IEEE double exp */
double x;
#endif
{
diff --git a/libm/e_fmod.c b/libm/e_fmod.c
index 565c3772b..1e8487cf0 100644
--- a/libm/e_fmod.c
+++ b/libm/e_fmod.c
@@ -30,9 +30,9 @@ static double one = 1.0, Zero[] = {0.0, -0.0,};
#endif
#ifdef __STDC__
- double __ieee754_fmod(double x, double y)
+ double attribute_hidden __ieee754_fmod(double x, double y)
#else
- double __ieee754_fmod(x,y)
+ double attribute_hidden __ieee754_fmod(x,y)
double x,y ;
#endif
{
diff --git a/libm/e_gamma.c b/libm/e_gamma.c
index a82261370..23611c369 100644
--- a/libm/e_gamma.c
+++ b/libm/e_gamma.c
@@ -24,9 +24,9 @@ extern int signgam;
#ifdef __STDC__
//__private_extern__
- double __ieee754_gamma(double x)
+ double attribute_hidden __ieee754_gamma(double x)
#else
- double __ieee754_gamma(x)
+ double attribute_hidden __ieee754_gamma(x)
double x;
#endif
{
diff --git a/libm/e_gamma_r.c b/libm/e_gamma_r.c
index 039eba49b..36b0d45d6 100644
--- a/libm/e_gamma_r.c
+++ b/libm/e_gamma_r.c
@@ -23,9 +23,9 @@
#ifdef __STDC__
//__private_extern__
- double __ieee754_gamma_r(double x, int *signgamp)
+ double attribute_hidden __ieee754_gamma_r(double x, int *signgamp)
#else
- double __ieee754_gamma_r(x,signgamp)
+ double attribute_hidden __ieee754_gamma_r(x,signgamp)
double x; int *signgamp;
#endif
{
diff --git a/libm/e_hypot.c b/libm/e_hypot.c
index 2052e215b..62acc8d03 100644
--- a/libm/e_hypot.c
+++ b/libm/e_hypot.c
@@ -50,9 +50,9 @@ static char rcsid[] = "$NetBSD: e_hypot.c,v 1.9 1995/05/12 04:57:27 jtc Exp $";
#include "math_private.h"
#ifdef __STDC__
- double __ieee754_hypot(double x, double y)
+ double attribute_hidden __ieee754_hypot(double x, double y)
#else
- double __ieee754_hypot(x,y)
+ double attribute_hidden __ieee754_hypot(x,y)
double x, y;
#endif
{
diff --git a/libm/e_j0.c b/libm/e_j0.c
index b347481ec..eaf06be05 100644
--- a/libm/e_j0.c
+++ b/libm/e_j0.c
@@ -94,9 +94,9 @@ static double zero = 0.0;
#endif
#ifdef __STDC__
- double __ieee754_j0(double x)
+ double attribute_hidden __ieee754_j0(double x)
#else
- double __ieee754_j0(x)
+ double attribute_hidden __ieee754_j0(x)
double x;
#endif
{
@@ -163,9 +163,9 @@ v03 = 2.59150851840457805467e-07, /* 0x3E91642D, 0x7FF202FD */
v04 = 4.41110311332675467403e-10; /* 0x3DFE5018, 0x3BD6D9EF */
#ifdef __STDC__
- double __ieee754_y0(double x)
+ double attribute_hidden __ieee754_y0(double x)
#else
- double __ieee754_y0(x)
+ double attribute_hidden __ieee754_y0(x)
double x;
#endif
{
diff --git a/libm/e_j1.c b/libm/e_j1.c
index e57049e84..370f0f0a1 100644
--- a/libm/e_j1.c
+++ b/libm/e_j1.c
@@ -95,9 +95,9 @@ static double zero = 0.0;
#endif
#ifdef __STDC__
- double __ieee754_j1(double x)
+ double attribute_hidden __ieee754_j1(double x)
#else
- double __ieee754_j1(x)
+ double attribute_hidden __ieee754_j1(x)
double x;
#endif
{
@@ -164,9 +164,9 @@ static double V0[5] = {
};
#ifdef __STDC__
- double __ieee754_y1(double x)
+ double attribute_hidden __ieee754_y1(double x)
#else
- double __ieee754_y1(x)
+ double attribute_hidden __ieee754_y1(x)
double x;
#endif
{
diff --git a/libm/e_jn.c b/libm/e_jn.c
index 857c4a3f5..ac0013b8d 100644
--- a/libm/e_jn.c
+++ b/libm/e_jn.c
@@ -59,9 +59,9 @@ static double zero = 0.00000000000000000000e+00;
#endif
#ifdef __STDC__
- double __ieee754_jn(int n, double x)
+ double attribute_hidden __ieee754_jn(int n, double x)
#else
- double __ieee754_jn(n,x)
+ double attribute_hidden __ieee754_jn(n,x)
int n; double x;
#endif
{
@@ -219,9 +219,9 @@ static double zero = 0.00000000000000000000e+00;
}
#ifdef __STDC__
- double __ieee754_yn(int n, double x)
+ double attribute_hidden __ieee754_yn(int n, double x)
#else
- double __ieee754_yn(n,x)
+ double attribute_hidden __ieee754_yn(n,x)
int n; double x;
#endif
{
diff --git a/libm/e_lgamma.c b/libm/e_lgamma.c
index f5f24ce64..3d3d6471d 100644
--- a/libm/e_lgamma.c
+++ b/libm/e_lgamma.c
@@ -24,9 +24,9 @@ extern int signgam;
#ifdef __STDC__
//__private_extern__
- double __ieee754_lgamma(double x)
+ double attribute_hidden __ieee754_lgamma(double x)
#else
- double __ieee754_lgamma(x)
+ double attribute_hidden __ieee754_lgamma(x)
double x;
#endif
{
diff --git a/libm/e_lgamma_r.c b/libm/e_lgamma_r.c
index 09bae2af3..42b48b3a6 100644
--- a/libm/e_lgamma_r.c
+++ b/libm/e_lgamma_r.c
@@ -217,9 +217,9 @@ __inline__
#ifdef __STDC__
- double __ieee754_lgamma_r(double x, int *signgamp)
+ double attribute_hidden __ieee754_lgamma_r(double x, int *signgamp)
#else
- double __ieee754_lgamma_r(x,signgamp)
+ double attribute_hidden __ieee754_lgamma_r(x,signgamp)
double x; int *signgamp;
#endif
{
diff --git a/libm/e_log.c b/libm/e_log.c
index 0464014cb..fce0617aa 100644
--- a/libm/e_log.c
+++ b/libm/e_log.c
@@ -91,9 +91,9 @@ static double zero = 0.0;
#endif
#ifdef __STDC__
- double __ieee754_log(double x)
+ double attribute_hidden __ieee754_log(double x)
#else
- double __ieee754_log(x)
+ double attribute_hidden __ieee754_log(x)
double x;
#endif
{
diff --git a/libm/e_log10.c b/libm/e_log10.c
index 2716a72c1..5b25c0f76 100644
--- a/libm/e_log10.c
+++ b/libm/e_log10.c
@@ -67,9 +67,9 @@ static double zero = 0.0;
#endif
#ifdef __STDC__
- double __ieee754_log10(double x)
+ double attribute_hidden __ieee754_log10(double x)
#else
- double __ieee754_log10(x)
+ double attribute_hidden __ieee754_log10(x)
double x;
#endif
{
diff --git a/libm/e_pow.c b/libm/e_pow.c
index b970775cd..94b490115 100644
--- a/libm/e_pow.c
+++ b/libm/e_pow.c
@@ -100,9 +100,9 @@ ivln2_h = 1.44269502162933349609e+00, /* 0x3FF71547, 0x60000000 =24b 1/ln2*/
ivln2_l = 1.92596299112661746887e-08; /* 0x3E54AE0B, 0xF85DDF44 =1/ln2 tail*/
#ifdef __STDC__
- double __ieee754_pow(double x, double y)
+ double attribute_hidden __ieee754_pow(double x, double y)
#else
- double __ieee754_pow(x,y)
+ double attribute_hidden __ieee754_pow(x,y)
double x, y;
#endif
{
diff --git a/libm/e_rem_pio2.c b/libm/e_rem_pio2.c
index 3dd7f7b49..239b68a73 100644
--- a/libm/e_rem_pio2.c
+++ b/libm/e_rem_pio2.c
@@ -84,9 +84,9 @@ pio2_3 = 2.02226624871116645580e-21, /* 0x3BA3198A, 0x2E000000 */
pio2_3t = 8.47842766036889956997e-32; /* 0x397B839A, 0x252049C1 */
#ifdef __STDC__
- int32_t __ieee754_rem_pio2(double x, double *y)
+ int32_t attribute_hidden __ieee754_rem_pio2(double x, double *y)
#else
- int32_t __ieee754_rem_pio2(x,y)
+ int32_t attribute_hidden __ieee754_rem_pio2(x,y)
double x,y[];
#endif
{
diff --git a/libm/e_remainder.c b/libm/e_remainder.c
index 52e8a28d3..1f7ea126b 100644
--- a/libm/e_remainder.c
+++ b/libm/e_remainder.c
@@ -34,9 +34,9 @@ static double zero = 0.0;
#ifdef __STDC__
- double __ieee754_remainder(double x, double p)
+ double attribute_hidden __ieee754_remainder(double x, double p)
#else
- double __ieee754_remainder(x,p)
+ double attribute_hidden __ieee754_remainder(x,p)
double x,p;
#endif
{
diff --git a/libm/e_scalb.c b/libm/e_scalb.c
index 9a366f330..1a1c43ac7 100644
--- a/libm/e_scalb.c
+++ b/libm/e_scalb.c
@@ -25,16 +25,16 @@ static char rcsid[] = "$NetBSD: e_scalb.c,v 1.6 1995/05/10 20:46:09 jtc Exp $";
#ifdef _SCALB_INT
#ifdef __STDC__
- double __ieee754_scalb(double x, int fn)
+ double attribute_hidden __ieee754_scalb(double x, int fn)
#else
- double __ieee754_scalb(x,fn)
+ double attribute_hidden __ieee754_scalb(x,fn)
double x; int fn;
#endif
#else
#ifdef __STDC__
- double __ieee754_scalb(double x, double fn)
+ double attribute_hidden __ieee754_scalb(double x, double fn)
#else
- double __ieee754_scalb(x,fn)
+ double attribute_hidden __ieee754_scalb(x,fn)
double x, fn;
#endif
#endif
diff --git a/libm/e_sinh.c b/libm/e_sinh.c
index c63ff8ade..462bc2f57 100644
--- a/libm/e_sinh.c
+++ b/libm/e_sinh.c
@@ -42,9 +42,9 @@ static double one = 1.0, shuge = 1.0e307;
#endif
#ifdef __STDC__
- double __ieee754_sinh(double x)
+ double attribute_hidden __ieee754_sinh(double x)
#else
- double __ieee754_sinh(x)
+ double attribute_hidden __ieee754_sinh(x)
double x;
#endif
{
diff --git a/libm/e_sqrt.c b/libm/e_sqrt.c
index fae52c842..c8385d673 100644
--- a/libm/e_sqrt.c
+++ b/libm/e_sqrt.c
@@ -94,9 +94,9 @@ static double one = 1.0, tiny=1.0e-300;
#endif
#ifdef __STDC__
- double __ieee754_sqrt(double x)
+ double attribute_hidden __ieee754_sqrt(double x)
#else
- double __ieee754_sqrt(x)
+ double attribute_hidden __ieee754_sqrt(x)
double x;
#endif
{
diff --git a/libm/float_wrappers.c b/libm/float_wrappers.c
index 4ea924201..0be5304f7 100644
--- a/libm/float_wrappers.c
+++ b/libm/float_wrappers.c
@@ -7,19 +7,7 @@
*
* Copyright (C) 2005 by Erik Andersen <andersen@uclibc.org>
*
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Library General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or (at your
- * option) any later version.
- *
- * This program 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 Library General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * GNU Lesser General Public License version 2.1 or later.
*/
#include "math.h"
diff --git a/libm/k_cos.c b/libm/k_cos.c
index 03c208aac..b2bbca0ca 100644
--- a/libm/k_cos.c
+++ b/libm/k_cos.c
@@ -66,9 +66,9 @@ C5 = 2.08757232129817482790e-09, /* 0x3E21EE9E, 0xBDB4B1C4 */
C6 = -1.13596475577881948265e-11; /* 0xBDA8FAE9, 0xBE8838D4 */
#ifdef __STDC__
- double __kernel_cos(double x, double y)
+ double attribute_hidden __kernel_cos(double x, double y)
#else
- double __kernel_cos(x, y)
+ double attribute_hidden __kernel_cos(x, y)
double x,y;
#endif
{
diff --git a/libm/k_rem_pio2.c b/libm/k_rem_pio2.c
index 9113d8762..e0347aad1 100644
--- a/libm/k_rem_pio2.c
+++ b/libm/k_rem_pio2.c
@@ -165,9 +165,9 @@ two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */
twon24 = 5.96046447753906250000e-08; /* 0x3E700000, 0x00000000 */
#ifdef __STDC__
- int __kernel_rem_pio2(double *x, double *y, int e0, int nx, int prec, const int32_t *ipio2)
+ int attribute_hidden __kernel_rem_pio2(double *x, double *y, int e0, int nx, int prec, const int32_t *ipio2)
#else
- int __kernel_rem_pio2(x,y,e0,nx,prec,ipio2)
+ int attribute_hidden __kernel_rem_pio2(x,y,e0,nx,prec,ipio2)
double x[], y[]; int e0,nx,prec; int32_t ipio2[];
#endif
{
diff --git a/libm/k_sin.c b/libm/k_sin.c
index 5bfc1d680..153f37ece 100644
--- a/libm/k_sin.c
+++ b/libm/k_sin.c
@@ -59,9 +59,9 @@ S5 = -2.50507602534068634195e-08, /* 0xBE5AE5E6, 0x8A2B9CEB */
S6 = 1.58969099521155010221e-10; /* 0x3DE5D93A, 0x5ACFD57C */
#ifdef __STDC__
- double __kernel_sin(double x, double y, int iy)
+ double attribute_hidden __kernel_sin(double x, double y, int iy)
#else
- double __kernel_sin(x, y, iy)
+ double attribute_hidden __kernel_sin(x, y, iy)
double x,y; int iy; /* iy=0 if y is zero */
#endif
{
diff --git a/libm/k_tan.c b/libm/k_tan.c
index 8f7822a3d..5698db569 100644
--- a/libm/k_tan.c
+++ b/libm/k_tan.c
@@ -75,9 +75,9 @@ T[] = {
};
#ifdef __STDC__
- double __kernel_tan(double x, double y, int iy)
+ double attribute_hidden __kernel_tan(double x, double y, int iy)
#else
- double __kernel_tan(x, y, iy)
+ double attribute_hidden __kernel_tan(x, y, iy)
double x,y; int iy;
#endif
{