summaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2005-12-14 08:43:25 +0000
committerUlrich Drepper <drepper@redhat.com>2005-12-14 08:43:25 +0000
commitb6ab06cef4670e02756bcdd4d2c33a49369a4346 (patch)
treeb30743eb9728d890d1519f62b2d1f2b96f62547a /math
parentd1dc39a44e339f9c48baa3854fffb3d68c73c8fa (diff)
downloadglibc-b6ab06cef4670e02756bcdd4d2c33a49369a4346.tar.gz
2005-12-13 Ulrich Drepper <drepper@redhat.com>
Diffstat (limited to 'math')
-rw-r--r--math/cabsf.c29
-rw-r--r--math/cargf.c29
-rw-r--r--math/cimagf.c28
-rw-r--r--math/conjf.c28
-rw-r--r--math/crealf.c28
-rw-r--r--math/e_acoshl.c14
-rw-r--r--math/e_acosl.c14
-rw-r--r--math/e_asinl.c14
-rw-r--r--math/e_atan2l.c14
-rw-r--r--math/e_atanhl.c14
-rw-r--r--math/e_coshl.c14
-rw-r--r--math/e_exp10.c30
-rw-r--r--math/e_exp10f.c30
-rw-r--r--math/e_exp10l.c30
-rw-r--r--math/e_exp2l.c14
-rw-r--r--math/e_expl.c14
-rw-r--r--math/e_fmodl.c14
-rw-r--r--math/e_gammal_r.c15
-rw-r--r--math/e_hypotl.c14
-rw-r--r--math/e_j0l.c25
-rw-r--r--math/e_j1l.c25
-rw-r--r--math/e_jnl.c25
-rw-r--r--math/e_lgammal_r.c17
-rw-r--r--math/e_log10l.c14
24 files changed, 493 insertions, 0 deletions
diff --git a/math/cabsf.c b/math/cabsf.c
new file mode 100644
index 0000000000..956db76ba1
--- /dev/null
+++ b/math/cabsf.c
@@ -0,0 +1,29 @@
+/* Return the complex absolute value of float complex value.
+ Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
+
+ 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 <complex.h>
+#include <math.h>
+
+float
+__cabsf (float _Complex z)
+{
+ return __hypotf (__real__ z, __imag__ z);
+}
+weak_alias (__cabsf, cabsf)
diff --git a/math/cargf.c b/math/cargf.c
new file mode 100644
index 0000000000..df1f20bc48
--- /dev/null
+++ b/math/cargf.c
@@ -0,0 +1,29 @@
+/* Compute argument of complex float value.
+ Copyright (C) 1997 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
+
+ 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 <complex.h>
+#include <math.h>
+
+float
+__cargf (__complex__ float x)
+{
+ return __atan2f (__imag__ x, __real__ x);
+}
+weak_alias (__cargf, cargf)
diff --git a/math/cimagf.c b/math/cimagf.c
new file mode 100644
index 0000000000..d4e441e69f
--- /dev/null
+++ b/math/cimagf.c
@@ -0,0 +1,28 @@
+/* Return imaginary part of complex float value.
+ Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
+
+ 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 <complex.h>
+
+float
+__cimagf (float _Complex z)
+{
+ return __imag__ z;
+}
+weak_alias (__cimagf, cimagf)
diff --git a/math/conjf.c b/math/conjf.c
new file mode 100644
index 0000000000..7893891933
--- /dev/null
+++ b/math/conjf.c
@@ -0,0 +1,28 @@
+/* Return complex conjugate of complex float value.
+ Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
+
+ 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 <complex.h>
+
+float _Complex
+__conjf (float _Complex z)
+{
+ return ~z;
+}
+weak_alias (__conjf, conjf)
diff --git a/math/crealf.c b/math/crealf.c
new file mode 100644
index 0000000000..e3235a874f
--- /dev/null
+++ b/math/crealf.c
@@ -0,0 +1,28 @@
+/* Return real part of complex float value.
+ Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
+
+ 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 <complex.h>
+
+float
+__crealf (float _Complex z)
+{
+ return __real__ z;
+}
+weak_alias (__crealf, crealf)
diff --git a/math/e_acoshl.c b/math/e_acoshl.c
new file mode 100644
index 0000000000..2c2fbe8eb4
--- /dev/null
+++ b/math/e_acoshl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_acoshl (long double x)
+{
+ fputs ("__ieee754_acoshl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (acoshl)
+#include <stub-tag.h>
diff --git a/math/e_acosl.c b/math/e_acosl.c
new file mode 100644
index 0000000000..d844d885b8
--- /dev/null
+++ b/math/e_acosl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_acosl (long double x)
+{
+ fputs ("__ieee754_acosl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (acosl)
+#include <stub-tag.h>
diff --git a/math/e_asinl.c b/math/e_asinl.c
new file mode 100644
index 0000000000..3b26f030ef
--- /dev/null
+++ b/math/e_asinl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_asinl (long double x)
+{
+ fputs ("__ieee754_asinl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (asinl)
+#include <stub-tag.h>
diff --git a/math/e_atan2l.c b/math/e_atan2l.c
new file mode 100644
index 0000000000..0caed8a32f
--- /dev/null
+++ b/math/e_atan2l.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_atan2l (long double x, long double y)
+{
+ fputs ("__ieee754_atan2l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (atan2l)
+#include <stub-tag.h>
diff --git a/math/e_atanhl.c b/math/e_atanhl.c
new file mode 100644
index 0000000000..625d42db31
--- /dev/null
+++ b/math/e_atanhl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_atanhl (long double x)
+{
+ fputs ("__ieee754_atanhl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (__ieee754_atanhl)
+#include <stub-tag.h>
diff --git a/math/e_coshl.c b/math/e_coshl.c
new file mode 100644
index 0000000000..0da319b785
--- /dev/null
+++ b/math/e_coshl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_coshl (long double x)
+{
+ fputs ("__ieee754_coshl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (__ieee754_coshl)
+#include <stub-tag.h>
diff --git a/math/e_exp10.c b/math/e_exp10.c
new file mode 100644
index 0000000000..a3eccbb9e6
--- /dev/null
+++ b/math/e_exp10.c
@@ -0,0 +1,30 @@
+/* Copyright (C) 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
+
+ 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 "math_private.h"
+
+
+double
+__ieee754_exp10 (double arg)
+{
+ /* This is a very stupid and inprecise implementation. It'll get
+ replaced sometime (soon?). */
+ return __ieee754_exp (M_LN10 * arg);
+}
diff --git a/math/e_exp10f.c b/math/e_exp10f.c
new file mode 100644
index 0000000000..7d06d074b8
--- /dev/null
+++ b/math/e_exp10f.c
@@ -0,0 +1,30 @@
+/* Copyright (C) 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
+
+ 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 "math_private.h"
+
+
+float
+__ieee754_exp10f (float arg)
+{
+ /* This is a very stupid and inprecise implementation. It'll get
+ replaced sometime (soon?). */
+ return __ieee754_expf (M_LN10 * arg);
+}
diff --git a/math/e_exp10l.c b/math/e_exp10l.c
new file mode 100644
index 0000000000..56f0cfec2f
--- /dev/null
+++ b/math/e_exp10l.c
@@ -0,0 +1,30 @@
+/* Copyright (C) 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
+
+ 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 "math_private.h"
+
+
+long double
+__ieee754_exp10l (long double arg)
+{
+ /* This is a very stupid and inprecise implementation. It'll get
+ replaced sometime (soon?). */
+ return __ieee754_expl (M_LN10l * arg);
+}
diff --git a/math/e_exp2l.c b/math/e_exp2l.c
new file mode 100644
index 0000000000..64ef6d3d50
--- /dev/null
+++ b/math/e_exp2l.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_exp2l (long double x)
+{
+ fputs ("__ieee754_exp2l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (exp2l)
+#include <stub-tag.h>
diff --git a/math/e_expl.c b/math/e_expl.c
new file mode 100644
index 0000000000..f9467c38ab
--- /dev/null
+++ b/math/e_expl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_expl (long double x)
+{
+ fputs ("__ieee754_expl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (expl)
+#include <stub-tag.h>
diff --git a/math/e_fmodl.c b/math/e_fmodl.c
new file mode 100644
index 0000000000..380da24e41
--- /dev/null
+++ b/math/e_fmodl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_fmodl (long double x, long double y)
+{
+ fputs ("__ieee754_fmodl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (fmodl)
+#include <stub-tag.h>
diff --git a/math/e_gammal_r.c b/math/e_gammal_r.c
new file mode 100644
index 0000000000..1c45c8421b
--- /dev/null
+++ b/math/e_gammal_r.c
@@ -0,0 +1,15 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_gammal_r (long double x, int *signgamp)
+{
+ *signgamp = 0;
+ fputs ("__ieee754_gammal_r not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (__ieee754_gammal_r)
+#include <stub-tag.h>
diff --git a/math/e_hypotl.c b/math/e_hypotl.c
new file mode 100644
index 0000000000..07df22eb36
--- /dev/null
+++ b/math/e_hypotl.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_hypotl (long double x, long double y)
+{
+ fputs ("__ieee754_hypotl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (__ieee754_hypotl)
+#include <stub-tag.h>
diff --git a/math/e_j0l.c b/math/e_j0l.c
new file mode 100644
index 0000000000..1bf0a1de73
--- /dev/null
+++ b/math/e_j0l.c
@@ -0,0 +1,25 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+#include "math_private.h"
+
+long double
+__ieee754_j0l (long double x)
+{
+ fputs ("__ieee754_j0l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (j0l)
+
+long double
+__ieee754_y0l (long double x)
+{
+ fputs ("__ieee754_y0l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (y0l)
+#include <stub-tag.h>
diff --git a/math/e_j1l.c b/math/e_j1l.c
new file mode 100644
index 0000000000..656abeba57
--- /dev/null
+++ b/math/e_j1l.c
@@ -0,0 +1,25 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+#include "math_private.h"
+
+long double
+__ieee754_j1l (long double x)
+{
+ fputs ("__ieee754_j1l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (j1l)
+
+long double
+__ieee754_y1l (long double x)
+{
+ fputs ("__ieee754_y1l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (y1l)
+#include <stub-tag.h>
diff --git a/math/e_jnl.c b/math/e_jnl.c
new file mode 100644
index 0000000000..1bfc0695a5
--- /dev/null
+++ b/math/e_jnl.c
@@ -0,0 +1,25 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+#include "math_private.h"
+
+long double
+__ieee754_jnl (int n, long double x)
+{
+ fputs ("__ieee754_jnl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (jnl)
+
+long double
+__ieee754_ynl (int n, long double x)
+{
+ fputs ("__ieee754_ynl not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (ynl)
+#include <stub-tag.h>
diff --git a/math/e_lgammal_r.c b/math/e_lgammal_r.c
new file mode 100644
index 0000000000..1784b2663f
--- /dev/null
+++ b/math/e_lgammal_r.c
@@ -0,0 +1,17 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+#include "math_private.h"
+
+long double
+__ieee754_lgammal_r (long double x, int *signgamp)
+{
+ *signgamp = 0;
+ fputs ("__ieee754_lgammal_r not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (lgammal)
+stub_warning (lgammal_r)
+#include <stub-tag.h>
diff --git a/math/e_log10l.c b/math/e_log10l.c
new file mode 100644
index 0000000000..5bc264b32c
--- /dev/null
+++ b/math/e_log10l.c
@@ -0,0 +1,14 @@
+#include <math.h>
+#include <stdio.h>
+#include <errno.h>
+
+long double
+__ieee754_log10l (long double x)
+{
+ fputs ("__ieee754_log10l not implemented\n", stderr);
+ __set_errno (ENOSYS);
+ return 0.0;
+}
+
+stub_warning (log10l)
+#include <stub-tag.h>