diff options
author | David S. Miller <davem@davemloft.net> | 2012-04-26 02:50:20 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-04-26 02:50:20 -0700 |
commit | 33f244f40b38fda964ccbfd4fa928a3d3d738f53 (patch) | |
tree | ccad3acdc22540dd08f11de428b8785178ad553f | |
parent | cfa1f3e8651f43ea8031b4fb6e491253261f95d1 (diff) | |
download | glibc-33f244f40b38fda964ccbfd4fa928a3d3d738f53.tar.gz glibc-33f244f40b38fda964ccbfd4fa928a3d3d738f53.tar.xz glibc-33f244f40b38fda964ccbfd4fa928a3d3d738f53.zip |
Fix missing long-double compat symbols on sparc v9.
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: Generate long-double compat symbols. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S: Likewise. * sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S: Likewise.
-rw-r--r-- | ChangeLog | 18 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S | 7 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S | 7 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S | 7 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S | 7 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S | 7 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S | 7 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S | 8 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S | 5 |
15 files changed, 103 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 080caddf55..7d2d1089d4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,21 @@ +2012-04-26 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: Generate + long-double compat symbols. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S: Likewise. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S: Likewise. + 2012-04-25 David S. Miller <davem@davemloft.net> * sysdeps/sparc/sparc32/bits/atomic.h: Include sysdep.h to get diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S index fa4c7c353f..835703fb9b 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S @@ -1,11 +1,18 @@ #include <sparc-ifunc.h> +#include <math_ldbl_opt.h> SPARC_ASM_VIS3_IFUNC(ceil) weak_alias (__ceil, ceil) +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __ceil, ceill, GLIBC_2_0) +#endif + # undef weak_alias # define weak_alias(a, b) +# undef compat_symbol +# define compat_symbol(a, b, c, d) #define __ceil __ceil_generic diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S index 6ae9947a7a..37aeb43b90 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S @@ -1,11 +1,18 @@ #include <sparc-ifunc.h> +#include <math_ldbl_opt.h> SPARC_ASM_VIS3_IFUNC(floor) weak_alias (__floor, floor) +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __floor, floorl, GLIBC_2_0) +#endif + # undef weak_alias # define weak_alias(a, b) +# undef compat_symbol +# define compat_symbol(a, b, c, d) #define __floor __floor_generic diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S index d5e59d8d1e..e996860485 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmax.S @@ -1,11 +1,18 @@ #include <sparc-ifunc.h> +#include <math_ldbl_opt.h> SPARC_ASM_VIS3_IFUNC(fmax) weak_alias (__fmax, fmax) +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fmax, fmaxl, GLIBC_2_1); +#endif + # undef weak_alias # define weak_alias(a, b) +# undef compat_symbol +# define compat_symbol(a, b, c, d) #define __fmax __fmax_generic diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S index b2aec1bbc0..b7ea51f475 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmin.S @@ -1,11 +1,18 @@ #include <sparc-ifunc.h> +#include <math_ldbl_opt.h> SPARC_ASM_VIS3_IFUNC(fmin) weak_alias (__fmin, fmin) +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fmin, fminl, GLIBC_2_1); +#endif + # undef weak_alias # define weak_alias(a, b) +# undef compat_symbol +# define compat_symbol(a, b, c, d) #define __fmin __fmin_generic diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S index a904aeca2a..fd23041404 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S @@ -1,4 +1,5 @@ #include <sparc-ifunc.h> +#include <math_ldbl_opt.h> SPARC_ASM_VIS3_IFUNC(llrint) @@ -7,10 +8,16 @@ weak_alias (__llrint, llrint) strong_alias (__llrint, __lllrint) weak_alias (__lllrint, lllrint) +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __llrint, llrintl, GLIBC_2_1) +#endif + # undef weak_alias # define weak_alias(a, b) # undef strong_alias # define strong_alias(a, b) +# undef compat_symbol +# define compat_symbol(a, b, c, d) #define __llrint __llrint_generic diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S index cc980eb8c7..de893faebf 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S @@ -1,11 +1,18 @@ #include <sparc-ifunc.h> +#include <math_ldbl_opt.h> SPARC_ASM_VIS3_IFUNC(rint) weak_alias (__rint, rint) +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __rint, rintl, GLIBC_2_0) +#endif + # undef weak_alias # define weak_alias(a, b) +# undef compat_symbol +# define compat_symbol(a, b, c, d) #define __rint __rint_generic diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S index 1d940e3ac7..90564e8021 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_ceil.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> /* Since changing the rounding mode is extremely expensive, we try to round up using a method that is rounding mode @@ -85,3 +86,7 @@ ENTRY (__ceil) for %f0, SIGN_BIT, %f0 END (__ceil) weak_alias (__ceil, ceil) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __ceil, ceill, GLIBC_2_0) +#endif diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S index bd94c7fd09..9ac3f5022e 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_floor.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> /* Since changing the rounding mode is extremely expensive, we try to round up using a method that is rounding mode @@ -85,3 +86,7 @@ ENTRY (__floor) for %f0, SIGN_BIT, %f0 END (__floor) weak_alias (__floor, floor) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __floor, floorl, GLIBC_2_0) +#endif diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S index 351eaaca69..a6ef860af2 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmax.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> #define SIGN_BIT %f12 /* -0.0 */ @@ -38,3 +39,7 @@ ENTRY (__fmax) fandnot2 %f0, %f4, %f0 END (__fmax) weak_alias (__fmax, fmax) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fmax, fmaxl, GLIBC_2_1); +#endif diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S index 059f15a612..4266a087e7 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_fmin.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> #define SIGN_BIT %f12 /* -0.0 */ @@ -38,3 +39,7 @@ ENTRY (__fmin) for %f0, %f4, %f0 END (__fmin) weak_alias (__fmin, fmin) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __fmin, fminl, GLIBC_2_1); +#endif diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S index 3122528a06..a1c0c61766 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_isnan.S @@ -17,6 +17,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> ENTRY (__isnan) sethi %hi(0x7ff00000), %g1 @@ -30,3 +31,10 @@ ENTRY (__isnan) END (__isnan) hidden_def (__isnan) weak_alias (__isnan, isnan) + +#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/sparc/sparc32/sparcv9/fpu/s_llrint.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S index 8ec9b4dcb4..55383907e7 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_llrint.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> /* We pop constants into the FPU registers using the incoming argument stack slots, since this avoid having to use any PIC @@ -65,3 +66,7 @@ ENTRY (__llrint) ldd [%sp + 72], %o0 END (__llrint) weak_alias (__llrint, llrint) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __llrint, llrintl, GLIBC_2_1) +#endif diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S index 062faba170..2fd0695552 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_lrint.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> /* We pop constants into the FPU registers using the incoming argument stack slots, since this avoid having to use any PIC @@ -65,3 +66,7 @@ ENTRY (__lrint) ld [%sp + 72], %o0 END (__lrint) weak_alias (__lrint, lrint) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) +compat_symbol (libm, __lrint, lrintl, GLIBC_2_1) +#endif diff --git a/sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S b/sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S index 9f9fddd462..32cfce8ee9 100644 --- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S +++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_rint.S @@ -18,6 +18,7 @@ <http://www.gnu.org/licenses/>. */ #include <sysdep.h> +#include <math_ldbl_opt.h> /* We pop constants into the FPU registers using the incoming argument stack slots, since this avoid having to use any PIC @@ -62,3 +63,7 @@ ENTRY (__rint) for %f0, SIGN_BIT, %f0 END (__rint) weak_alias (__rint, rint) + +#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) +compat_symbol (libm, __rint, rintl, GLIBC_2_0) +#endif |