[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r17295 - in /fsf/trunk/ports: ./ sysdeps/m68k/m680x0/fpu/ sysdeps/m68k/m680x0/fpu/bits/
- To: commits@xxxxxxxxxx
- Subject: [Commits] r17295 - in /fsf/trunk/ports: ./ sysdeps/m68k/m680x0/fpu/ sysdeps/m68k/m680x0/fpu/bits/
- From: eglibc@xxxxxxxxxx
- Date: Sun, 26 Feb 2012 00:01:52 -0000
Author: eglibc
Date: Sun Feb 26 00:01:51 2012
New Revision: 17295
Log:
Import glibc-ports-mainline for 2012-02-26
Modified:
fsf/trunk/ports/ChangeLog.m68k
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cos.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sin.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tan.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c
fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c
Modified: fsf/trunk/ports/ChangeLog.m68k
==============================================================================
--- fsf/trunk/ports/ChangeLog.m68k (original)
+++ fsf/trunk/ports/ChangeLog.m68k Sun Feb 26 00:01:51 2012
@@ -1,3 +1,33 @@
+2012-02-25 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
+
+ * sysdeps/m68k/m680x0/fpu/s_ccosh.c: Avoid raising invalid
+ exception for NaN+iNaN.
+
+2012-02-24 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
+
+ * sysdeps/m68k/m680x0/fpu/libm-test-ulps: Update ULPs.
+
+ * sysdeps/m68k/m680x0/fpu/s_expm1.c: Set errno to ERANGE if
+ argument causes overflow.
+ * sysdeps/m68k/m680x0/fpu/s_expm1f.c: Include <s_expm1.c>.
+ (float_type, o_threshold): Define.
+ * sysdeps/m68k/m680x0/fpu/s_expm1l.c: Likewise.
+ * sysdeps/m68k/m680x0/fpu/bits/mathinline.h [__OPTIMIZE__]: Don't
+ define expm1 as inline.
+
+ * sysdeps/m68k/m680x0/fpu/s_sin.c: Set errno to EDOM if argument
+ is infinite.
+ * sysdeps/m68k/m680x0/fpu/s_cos.c: Include <s_sin.c>.
+ * sysdeps/m68k/m680x0/fpu/s_tan.c: Likewise.
+ * sysdeps/m68k/m680x0/fpu/s_cosf.c: Include <s_sinf.c>.
+ * sysdeps/m68k/m680x0/fpu/s_cosl.c: Include <s_sinl.c>.
+ * sysdeps/m68k/m680x0/fpu/s_sinf.c: Include <s_sin.c>.
+ (FUNC): Don't define if already defined.
+ (float_type): Define.
+ * sysdeps/m68k/m680x0/fpu/s_sinl.c: Likewise.
+ * sysdeps/m68k/m680x0/fpu/bits/mathinline.h [__OPTIMIZE__]: Don't
+ define sin, cos, tan as inlines.
+
2012-02-08 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
* sysdeps/m68k/crti.S: New file.
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/bits/mathinline.h Sun Feb 26 00:01:51 2012
@@ -1,5 +1,5 @@
/* Definitions of inline math functions implemented by the m68881/2.
- Copyright (C) 1991,92,93,94,96,97,98,99,2000,2002, 2003, 2004, 2008, 2010
+ Copyright (C) 1991,92,93,94,96,97,98,99,2000,2002, 2003, 2004, 2008, 2010, 2012
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -175,14 +175,10 @@
#if !defined __NO_MATH_INLINES && defined __OPTIMIZE__
__inline_mathop(atan, atan)
-__inline_mathop(cos, cos)
-__inline_mathop(sin, sin)
-__inline_mathop(tan, tan)
__inline_mathop(tanh, tanh)
# if defined __USE_MISC || defined __USE_XOPEN_EXTENDED || defined __USE_ISOC99
__inline_mathop(rint, int)
-__inline_mathop(expm1, etoxm1)
__inline_mathop(log1p, lognp1)
# endif
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/libm-test-ulps Sun Feb 26 00:01:51 2012
@@ -79,14 +79,16 @@
ldouble: 5
Test "Imaginary part of: casinh (-2 - 3 i) == -1.9686379257930962917886650952454982 - 0.96465850440760279204541105949953237 i":
double: 13
-float: 1
+float: 6
idouble: 13
-ifloat: 1
+ifloat: 6
ildouble: 6
ldouble: 6
Test "Real part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casinh (0.75 + 1.25 i) == 1.03171853444778027336364058631006594 + 0.911738290968487636358489564316731207 i":
double: 1
float: 1
@@ -107,6 +109,8 @@
# catanh
Test "Real part of: catanh (-2 - 3 i) == -0.14694666622552975204743278515471595 - 1.3389725222944935611241935759091443 i":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -272,9 +276,11 @@
Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i) == 0.331825439177608832276067945276730566 + 0.131338600281188544930936345230903032 i":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i) == 0.117506293914473555420279832210420483 + 0.346552747708338676483025352060418001 i":
-float: 1
-ifloat: 1
+float: 3
+ifloat: 3
ildouble: 9
ldouble: 9
Test "Imaginary part of: cpow (0.75 + 1.25 i, 0.75 + 1.25 i) == 0.117506293914473555420279832210420483 + 0.346552747708338676483025352060418001 i":
@@ -294,9 +300,9 @@
ldouble: 1
Test "Real part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i) == 0.0846958290317209430433805274189191353 + 0.513285749182902449043287190519090481 i":
double: 1
-float: 2
-idouble: 1
-ifloat: 2
+float: 3
+idouble: 1
+ifloat: 3
ildouble: 15
ldouble: 15
Test "Imaginary part of: cpow (0.75 + 1.25 i, 1.0 + 1.0 i) == 0.0846958290317209430433805274189191353 + 0.513285749182902449043287190519090481 i":
@@ -366,6 +372,9 @@
Test "Real part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i":
double: 1
idouble: 1
+ildouble: 2
+ldouble: 2
+Test "Imaginary part of: ctan (-2 - 3 i) == 0.376402564150424829275122113032269084e-2 - 1.00323862735360980144635859782192726 i":
ildouble: 1
ldouble: 1
Test "Real part of: ctan (0.75 + 1.25 i) == 0.160807785916206426725166058173438663 + 0.975363285031235646193581759755216379 i":
@@ -376,6 +385,9 @@
ldouble: 2
# ctanh
+Test "Real part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: ctanh (-2 - 3 i) == -0.965385879022133124278480269394560686 + 0.988437503832249372031403430350121098e-2 i":
ildouble: 1
ldouble: 1
@@ -397,9 +409,14 @@
Test "erfc (1.25) == 0.0770998717435417698634765188027188596":
ildouble: 1
ldouble: 1
+Test "erfc (2.0) == 0.00467773498104726583793074363274707139":
+float: 1
+ifloat: 1
Test "erfc (4.125) == 0.542340079956506600531223408575531062e-8":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
# expm1
Test "expm1 (1) == M_El - 1.0":
@@ -447,8 +464,8 @@
Test "j0 (-4.0) == -3.9714980986384737228659076845169804197562E-1":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Test "j0 (0.75) == 0.864242275166648623555731103820923211":
float: 1
ifloat: 1
@@ -461,8 +478,11 @@
Test "j0 (4.0) == -3.9714980986384737228659076845169804197562E-1":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
+Test "j0 (8.0) == 0.171650807137553906090869407851972001":
+float: 1
+ifloat: 1
# j1
Test "j1 (-1.0) == -0.440050585744933515959682203718914913":
@@ -492,8 +512,8 @@
Test "jn (0, -4.0) == -3.9714980986384737228659076845169804197562E-1":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Test "jn (0, 0.75) == 0.864242275166648623555731103820923211":
float: 1
ifloat: 1
@@ -506,8 +526,11 @@
Test "jn (0, 4.0) == -3.9714980986384737228659076845169804197562E-1":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
+Test "jn (0, 8.0) == 0.171650807137553906090869407851972001":
+float: 1
+ifloat: 1
Test "jn (1, -1.0) == -0.440050585744933515959682203718914913":
float: 1
ifloat: 1
@@ -539,7 +562,9 @@
float: 1
ifloat: 1
Test "jn (10, 0.75) == 0.149621713117596814698712483621682835e-10":
-float: 2
+double: 1
+float: 2
+idouble: 1
ifloat: 2
ildouble: 2
ldouble: 2
@@ -560,6 +585,11 @@
ifloat: 2
ildouble: 1
ldouble: 1
+Test "jn (2, 2.4048255576957729) == 0.43175480701968038399746111312430703":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (3, -1.0) == -0.0195633539826684059189053216217515083":
float: 1
ifloat: 1
@@ -578,8 +608,45 @@
ildouble: 1
ldouble: 1
Test "jn (3, 2.0) == 0.128943249474402051098793332969239835":
-ildouble: 1
-ldouble: 1
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (3, 2.4048255576957729) == 0.19899990535769083404042146764530813":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (4, 2.4048255576957729) == 0.647466661641779720084932282551219891E-1":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (5, 2.4048255576957729) == 0.163892432048058525099230549946147698E-1":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 3
+ldouble: 3
+Test "jn (6, 2.4048255576957729) == 0.34048184720278336646673682895929161E-2":
+float: 4
+ifloat: 4
+ildouble: 1
+ldouble: 1
+Test "jn (7, 2.4048255576957729) == 0.60068836573295394221291569249883076E-3":
+float: 5
+ifloat: 5
+Test "jn (8, 2.4048255576957729) == 0.92165786705344923232879022467054148E-4":
+float: 4
+ifloat: 4
+ildouble: 2
+ldouble: 2
+Test "jn (9, 2.4048255576957729) == 0.12517270977961513005428966643852564E-4":
+float: 3
+ifloat: 3
+ildouble: 2
+ldouble: 2
# lgamma
Test "lgamma (-0.5) == log(2*sqrt(pi))":
@@ -622,6 +689,8 @@
Test "log10 (e) == log10(e)":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
# log1p
Test "log1p (-0.25) == -0.287682072451780927439219005993827432":
@@ -637,6 +706,14 @@
Test "pow (0.75, 1.25) == 0.697953644326574699205914060237425566":
ildouble: 1
ldouble: 1
+Test "pow (0x1p64, 0.125) == 256":
+ildouble: 1
+ldouble: 1
+Test "pow (256, 8) == 0x1p64":
+float: 1
+ifloat: 1
+ildouble: 7
+ldouble: 7
# sincos
Test "sincos (M_PI_6l*2.0, &sin_res, &cos_res) puts 0.5 in cos_res":
@@ -706,16 +783,22 @@
ldouble: 1
Test "y0 (0.75) == -0.137172769385772397522814379396581855":
double: 1
-idouble: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
Test "y0 (1.0) == 0.0882569642156769579829267660235151628":
ildouble: 1
ldouble: 1
Test "y0 (1.5) == 0.382448923797758843955068554978089862":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "y0 (10.0) == 0.0556711672835993914244598774101900481":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "y0 (2.0) == 0.510375672649745119596606592727157873":
@@ -743,6 +826,8 @@
ildouble: 1
ldouble: 1
Test "y1 (8.0) == -0.158060461731247494255555266187483550":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -756,16 +841,22 @@
ldouble: 1
Test "yn (0, 0.75) == -0.137172769385772397522814379396581855":
double: 1
-idouble: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 2
ldouble: 2
Test "yn (0, 1.0) == 0.0882569642156769579829267660235151628":
ildouble: 1
ldouble: 1
Test "yn (0, 1.5) == 0.382448923797758843955068554978089862":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "yn (0, 10.0) == 0.0556711672835993914244598774101900481":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "yn (0, 2.0) == 0.510375672649745119596606592727157873":
@@ -796,6 +887,8 @@
ildouble: 1
ldouble: 1
Test "yn (1, 8.0) == -0.158060461731247494255555266187483550":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Test "yn (10, 0.125) == -127057845771019398.252538486899753195":
@@ -888,17 +981,17 @@
Function: Real part of "casinh":
double: 6
-float: 19
+float: 1
idouble: 6
-ifloat: 19
+ifloat: 1
ildouble: 5
ldouble: 5
Function: Imaginary part of "casinh":
double: 13
-float: 1
+float: 6
idouble: 13
-ifloat: 1
+ifloat: 6
ildouble: 6
ldouble: 6
@@ -913,6 +1006,8 @@
ifloat: 1
Function: Real part of "catanh":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -988,17 +1083,17 @@
Function: Real part of "cpow":
double: 1
-float: 2
-idouble: 1
-ifloat: 2
+float: 3
+idouble: 1
+ifloat: 3
ildouble: 15
ldouble: 15
Function: Imaginary part of "cpow":
double: 2
-float: 6
+float: 5
idouble: 2
-ifloat: 6
+ifloat: 5
ildouble: 2
ldouble: 2
@@ -1025,12 +1120,16 @@
Function: Real part of "ctan":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: Imaginary part of "ctan":
-ildouble: 2
-ldouble: 2
+ildouble: 1
+ldouble: 1
+
+Function: Real part of "ctanh":
+ildouble: 1
+ldouble: 1
Function: Imaginary part of "ctanh":
double: 1
@@ -1063,8 +1162,8 @@
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "j1":
float: 2
@@ -1077,8 +1176,8 @@
float: 5
idouble: 1
ifloat: 5
-ildouble: 2
-ldouble: 2
+ildouble: 3
+ldouble: 3
Function: "lgamma":
double: 1
@@ -1109,8 +1208,10 @@
ldouble: 1
Function: "pow":
-ildouble: 1
-ldouble: 1
+float: 1
+ifloat: 1
+ildouble: 7
+ldouble: 7
Function: "sincos":
double: 1
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_ccosh.c Sun Feb 26 00:01:51 2012
@@ -1,5 +1,5 @@
/* Complex cosine hyperbole function. m68k fpu version
- Copyright (C) 1997, 1999, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1999, 2010, 2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Andreas Schwab <schwab@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>.
@@ -67,7 +67,7 @@
if (rx_cond & __M81_COND_INF)
__real__ retval = s(fabs) (__real__ x);
else
- __real__ retval = 0.0/0.0;
+ __real__ retval = s(__nan) ("");
__imag__ retval = __imag__ x - __imag__ x;
}
}
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cos.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cos.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cos.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,2 @@
#define FUNC cos
-#include <s_atan.c>
+#include <s_sin.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosf.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,2 @@
-#define FUNC cosf
-#include <s_atanf.c>
+#define FUNC cosf
+#include <s_sinf.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_cosl.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,2 @@
#define FUNC cosl
-#include <s_atanl.c>
+#include <s_sinl.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,44 @@
-#define FUNC expm1
-#include <s_atan.c>
+/* Copyright (C) 2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ 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 <math.h>
+#include <errno.h>
+#include "mathimpl.h"
+
+#ifndef FUNC
+# define FUNC expm1
+#endif
+#ifndef float_type
+# define float_type double
+#endif
+#ifndef o_threshold
+# define o_threshold 7.09782712893383973096e+02
+#endif
+
+#define CONCATX(a,b) __CONCAT(a,b)
+
+float_type
+CONCATX(__,FUNC) (float_type x)
+{
+ if ((__m81_test (x) & __M81_COND_INF) == 0 && isgreater (x, o_threshold))
+ __set_errno (ERANGE);
+ return __m81_u(CONCATX(__, FUNC)) (x);
+}
+
+#define weak_aliasx(a, b) weak_alias(a, b)
+weak_aliasx (CONCATX(__, FUNC), FUNC)
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1f.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,4 @@
-#define FUNC expm1f
-#include <s_atanf.c>
+#define FUNC expm1f
+#define float_type float
+#define o_threshold 8.8722831726e+01F
+#include <s_expm1.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_expm1l.c Sun Feb 26 00:01:51 2012
@@ -1,3 +1,6 @@
-#define FUNC expm1l
-#include <s_atanl.c>
+#define FUNC expm1l
+#define float_type long double
+/* 400c0000b17217f7d1cf79ab */
+#define o_threshold 1.13565234062941439487914863093465101e+04L
+#include <s_expm1.c>
libm_hidden_def (__expm1l)
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sin.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sin.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sin.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,41 @@
-#define FUNC sin
-#include <s_atan.c>
+/* Copyright (C) 2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ 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 <math.h>
+#include <errno.h>
+#include "mathimpl.h"
+
+#ifndef FUNC
+# define FUNC sin
+#endif
+#ifndef float_type
+# define float_type double
+#endif
+
+#define CONCATX(a,b) __CONCAT(a,b)
+
+float_type
+CONCATX(__,FUNC) (float_type x)
+{
+ if (__m81_test (x) & __M81_COND_INF)
+ __set_errno (EDOM);
+ return __m81_u(CONCATX(__, FUNC)) (x);
+}
+
+#define weak_aliasx(a, b) weak_alias(a, b)
+weak_aliasx (CONCATX(__, FUNC), FUNC)
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinf.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,5 @@
-#define FUNC sinf
-#include <s_atanf.c>
+#ifndef FUNC
+# define FUNC sinf
+#endif
+#define float_type float
+#include <s_sin.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_sinl.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,5 @@
-#define FUNC sinl
-#include <s_atanl.c>
+#ifndef FUNC
+# define FUNC sinl
+#endif
+#define float_type long double
+#include <s_sin.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tan.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tan.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tan.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,2 @@
#define FUNC tan
-#include <s_atan.c>
+#include <s_sin.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanf.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,2 @@
-#define FUNC tanf
-#include <s_atanf.c>
+#define FUNC tanf
+#include <s_sinf.c>
Modified: fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c (original)
+++ fsf/trunk/ports/sysdeps/m68k/m680x0/fpu/s_tanl.c Sun Feb 26 00:01:51 2012
@@ -1,2 +1,2 @@
#define FUNC tanl
-#include <s_atanl.c>
+#include <s_sinl.c>
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits