summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordeischen <deischen@FreeBSD.org>2006-03-27 23:59:45 +0000
committerdeischen <deischen@FreeBSD.org>2006-03-27 23:59:45 +0000
commitd76f24935a05d27513e151190d3cf476d0215bf2 (patch)
tree4c563bbade24f14bf9ea39f67715984d7be2dc3f
parent593cd30b45b4a08a2e0938c2eeccfeff0b87c94e (diff)
downloadFreeBSD-src-d76f24935a05d27513e151190d3cf476d0215bf2.zip
FreeBSD-src-d76f24935a05d27513e151190d3cf476d0215bf2.tar.gz
Add symbol versioning to libm.
-rw-r--r--lib/msun/Makefile6
-rw-r--r--lib/msun/Symbol.map181
-rw-r--r--lib/msun/alpha/Makefile.inc1
-rw-r--r--lib/msun/alpha/Symbol.map13
-rw-r--r--lib/msun/amd64/Makefile.inc1
-rw-r--r--lib/msun/amd64/Symbol.map12
-rw-r--r--lib/msun/arm/Makefile.inc1
-rw-r--r--lib/msun/arm/Symbol.map3
-rw-r--r--lib/msun/i387/Makefile.inc1
-rw-r--r--lib/msun/i387/Symbol.map14
-rw-r--r--lib/msun/ia64/Makefile.inc1
-rw-r--r--lib/msun/ia64/Symbol.map4
-rw-r--r--lib/msun/powerpc/Makefile.inc1
-rw-r--r--lib/msun/powerpc/Symbol.map3
-rw-r--r--lib/msun/sparc64/Makefile.inc1
-rw-r--r--lib/msun/sparc64/Symbol.map3
16 files changed, 246 insertions, 0 deletions
diff --git a/lib/msun/Makefile b/lib/msun/Makefile
index 5a41425..de8a54e 100644
--- a/lib/msun/Makefile
+++ b/lib/msun/Makefile
@@ -61,6 +61,12 @@ COMMON_SRCS= b_exp.c b_log.c b_tgamma.c \
# Location of fpmath.h and _fpmath.h
LIBCDIR= ${.CURDIR}/../libc
CFLAGS+= -I${LIBCDIR}/include -I${LIBCDIR}/${MACHINE_ARCH}
+SYM_MAPS+= ${.CURDIR}/Symbol.map
+
+.if defined(SYMVER_ENABLED)
+VERSION_DEF= ${LIBCDIR}/Versions.def
+SYMBOL_MAPS= ${SYM_MAPS}
+.endif
# C99 long double functions
COMMON_SRCS+= s_copysignl.c s_fabsl.c
diff --git a/lib/msun/Symbol.map b/lib/msun/Symbol.map
new file mode 100644
index 0000000..42b8f71
--- /dev/null
+++ b/lib/msun/Symbol.map
@@ -0,0 +1,181 @@
+# $FreeBSD$
+FBSD_1.0 {
+ __fe_dfl_env;
+ tgamma;
+ acos;
+ acosf;
+ acosh;
+ acoshf;
+ asin;
+ asinf;
+ atan2;
+ atan2f;
+ atanh;
+ atanhf;
+ cosh;
+ coshf;
+ exp;
+ expf;
+ fmod;
+ fmodf;
+ gamma;
+ gamma_r;
+ gammaf;
+ gammaf_r;
+ hypot;
+ hypotf;
+ j0;
+ y0;
+ j0f;
+ y0f;
+ j1;
+ y1;
+ j1f;
+ y1f;
+ jn;
+ yn;
+ jnf;
+ ynf;
+ lgamma;
+ lgamma_r;
+ lgammaf;
+ lgammaf_r;
+ log;
+ log10;
+ log10f;
+ logf;
+ pow;
+ powf;
+ remainder;
+ remainderf;
+ scalb;
+ scalbf;
+ sinh;
+ sinhf;
+ sqrt;
+ sqrtf;
+ asinh;
+ asinhf;
+ atan;
+ atanf;
+ cbrt;
+ cbrtf;
+ ceil;
+ ceilf;
+ ceill;
+ cimag;
+ cimagf;
+ cimagl;
+ conj;
+ conjf;
+ conjl;
+ copysign;
+ copysignf;
+ copysignl;
+ cos;
+ cosf;
+ creal;
+ crealf;
+ creall;
+ erf;
+ erfc;
+ erff;
+ erfcf;
+ exp2;
+ exp2f;
+ expm1;
+ expm1f;
+ fabs;
+ fabsf;
+ fabsl;
+ fdim;
+ fdimf;
+ fdiml;
+ finite;
+ finitef;
+ floor;
+ floorf;
+ floorl;
+ fma;
+ fmaf;
+ fmal;
+ fmax;
+ fmaxf;
+ fmaxl;
+ fmin;
+ fminf;
+ fminl;
+ frexp;
+ frexpf;
+ frexpl;
+ ilogb;
+ ilogbf;
+ ilogbl;
+ __isfinite;
+ __isfinitef;
+ __isfinitel;
+ isnanf;
+ __isnanl;
+ __isnormal;
+ __isnormalf;
+ __isnormall;
+ llrint;
+ llrintf;
+ llround;
+ llroundf;
+ llroundl;
+ log1p;
+ log1pf;
+ logb;
+ logbf;
+ lrint;
+ lrintf;
+ lround;
+ lroundf;
+ lroundl;
+ modf;
+ modff;
+ nearbyint;
+ nearbyintf;
+ nextafter;
+ nexttoward;
+ nexttowardl;
+ nextafterl;
+ nextafterf;
+ nexttowardf;
+ remquo;
+ remquof;
+ rint;
+ rintf;
+ round;
+ roundf;
+ roundl;
+ scalbln;
+ scalblnf;
+ scalblnl;
+ scalbn;
+ scalbnl;
+ scalbnf;
+ ldexpf;
+ ldexpl;
+ __signbit;
+ __signbitf;
+ __signbitl;
+ signgam;
+ significand;
+ significandf;
+ sin;
+ sinf;
+ tan;
+ tanf;
+ tanh;
+ tanhf;
+ trunc;
+ truncf;
+ truncl;
+ cabs;
+ z_abs;
+ cabsf;
+ drem;
+ dremf;
+};
diff --git a/lib/msun/alpha/Makefile.inc b/lib/msun/alpha/Makefile.inc
index b5c8558..f2fc86a 100644
--- a/lib/msun/alpha/Makefile.inc
+++ b/lib/msun/alpha/Makefile.inc
@@ -2,6 +2,7 @@
ARCH_SRCS = s_copysign.S s_copysignf.S
LDBL_PREC = 53
+SYM_MAPS += ${.CURDIR}/alpha/Symbol.map
# XXX Comment from NetBSD/Alpha:
# XXX LINT SIGFPEs in e_exp.c's strtod(). FP underflow/denorm software
diff --git a/lib/msun/alpha/Symbol.map b/lib/msun/alpha/Symbol.map
new file mode 100644
index 0000000..1eaba2e
--- /dev/null
+++ b/lib/msun/alpha/Symbol.map
@@ -0,0 +1,13 @@
+# $FreeBSD$
+FBSD_1.0 {
+ fegetenv;
+ feholdexcept;
+ fesetenv;
+ feupdateenv;
+ __feenableexcept;
+ __fedisableexcept;
+ __fegetexcept;
+ feenableexcept;
+ fedisableexcept;
+ fegetexcept;
+};
diff --git a/lib/msun/amd64/Makefile.inc b/lib/msun/amd64/Makefile.inc
index 1914ce8..d4696a6 100644
--- a/lib/msun/amd64/Makefile.inc
+++ b/lib/msun/amd64/Makefile.inc
@@ -3,3 +3,4 @@
ARCH_SRCS = e_sqrt.S e_sqrtf.S s_llrint.S s_llrintf.S s_lrint.S s_lrintf.S \
s_remquo.S s_remquof.S s_scalbn.S s_scalbnf.S s_scalbnl.S
LDBL_PREC = 64
+SYM_MAPS += ${.CURDIR}/amd64/Symbol.map
diff --git a/lib/msun/amd64/Symbol.map b/lib/msun/amd64/Symbol.map
new file mode 100644
index 0000000..470febd
--- /dev/null
+++ b/lib/msun/amd64/Symbol.map
@@ -0,0 +1,12 @@
+# $FreeBSD$
+FBSD_1.0 {
+ fesetexceptflag;
+ feraiseexcept;
+ fegetenv;
+ feholdexcept;
+ feupdateenv;
+ __feenableexcept;
+ __fedisableexcept;
+ feenableexcept;
+ fedisableexcept;
+};
diff --git a/lib/msun/arm/Makefile.inc b/lib/msun/arm/Makefile.inc
index 812ce1a..7d9e10b 100644
--- a/lib/msun/arm/Makefile.inc
+++ b/lib/msun/arm/Makefile.inc
@@ -1,3 +1,4 @@
# $FreeBSD$
LDBL_PREC = 53
+SYM_MAPS += ${.CURDIR}/arm/Symbol.map
diff --git a/lib/msun/arm/Symbol.map b/lib/msun/arm/Symbol.map
new file mode 100644
index 0000000..7e6e56d
--- /dev/null
+++ b/lib/msun/arm/Symbol.map
@@ -0,0 +1,3 @@
+# $FreeBSD$
+FBSD_1.0 {
+};
diff --git a/lib/msun/i387/Makefile.inc b/lib/msun/i387/Makefile.inc
index bae4c62..c02653e 100644
--- a/lib/msun/i387/Makefile.inc
+++ b/lib/msun/i387/Makefile.inc
@@ -16,3 +16,4 @@ ARCH_SRCS+= e_log10f.S e_logf.S e_remainderf.S e_scalbf.S \
ARCH_SRCS+= s_ceill.S s_copysignl.S s_floorl.S s_scalbnl.S s_truncl.S
LDBL_PREC = 64 # XXX 64-bit format, but truncated to 53 bits
+SYM_MAPS += ${.CURDIR}/i387/Symbol.map
diff --git a/lib/msun/i387/Symbol.map b/lib/msun/i387/Symbol.map
new file mode 100644
index 0000000..7285179
--- /dev/null
+++ b/lib/msun/i387/Symbol.map
@@ -0,0 +1,14 @@
+# $FreeBSD$
+FBSD_1.0 {
+ __has_sse;
+ __test_sse;
+ fesetexceptflag;
+ feraiseexcept;
+ fegetenv;
+ feholdexcept;
+ feupdateenv;
+ __feenableexcept;
+ __fedisableexcept;
+ feenableexcept;
+ fedisableexcept;
+};
diff --git a/lib/msun/ia64/Makefile.inc b/lib/msun/ia64/Makefile.inc
index 0743e66..c941c66 100644
--- a/lib/msun/ia64/Makefile.inc
+++ b/lib/msun/ia64/Makefile.inc
@@ -2,3 +2,4 @@
ARCH_SRCS = s_fma.S s_fmaf.S s_fmal.S
LDBL_PREC = 64
+SYM_MAPS += ${.CURDIR}/ia64/Symbol.map
diff --git a/lib/msun/ia64/Symbol.map b/lib/msun/ia64/Symbol.map
new file mode 100644
index 0000000..9b63e4f
--- /dev/null
+++ b/lib/msun/ia64/Symbol.map
@@ -0,0 +1,4 @@
+# $FreeBSD$
+FBSD_1.0 {
+ feupdateenv;
+};
diff --git a/lib/msun/powerpc/Makefile.inc b/lib/msun/powerpc/Makefile.inc
index 812ce1a..bc62448 100644
--- a/lib/msun/powerpc/Makefile.inc
+++ b/lib/msun/powerpc/Makefile.inc
@@ -1,3 +1,4 @@
# $FreeBSD$
LDBL_PREC = 53
+SYM_MAPS += ${.CURDIR}/powerpc/Symbol.map
diff --git a/lib/msun/powerpc/Symbol.map b/lib/msun/powerpc/Symbol.map
new file mode 100644
index 0000000..7e6e56d
--- /dev/null
+++ b/lib/msun/powerpc/Symbol.map
@@ -0,0 +1,3 @@
+# $FreeBSD$
+FBSD_1.0 {
+};
diff --git a/lib/msun/sparc64/Makefile.inc b/lib/msun/sparc64/Makefile.inc
index 199be41..052dc4d 100644
--- a/lib/msun/sparc64/Makefile.inc
+++ b/lib/msun/sparc64/Makefile.inc
@@ -2,3 +2,4 @@
ARCH_SRCS= e_sqrt.S e_sqrtf.S
LDBL_PREC= 113
+SYM_MAPS+= ${.CURDIR}/sparc64/Symbol.map
diff --git a/lib/msun/sparc64/Symbol.map b/lib/msun/sparc64/Symbol.map
new file mode 100644
index 0000000..7e6e56d
--- /dev/null
+++ b/lib/msun/sparc64/Symbol.map
@@ -0,0 +1,3 @@
+# $FreeBSD$
+FBSD_1.0 {
+};
OpenPOWER on IntegriCloud