aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/Makefile10
-rw-r--r--sysdeps/ieee754/dbl2mpn.c28
-rw-r--r--sysdeps/ieee754/ldbl2mpn.c28
-rw-r--r--sysdeps/ieee754/mpn2dbl.c34
-rw-r--r--sysdeps/ieee754/mpn2flt.c32
-rw-r--r--sysdeps/ieee754/mpn2ldbl.c34
-rw-r--r--sysdeps/libm-ieee754/s_fdim.c36
-rw-r--r--sysdeps/libm-ieee754/s_fdimf.c36
-rw-r--r--sysdeps/libm-ieee754/s_fdiml.c36
-rw-r--r--sysdeps/libm-ieee754/s_fmax.c29
-rw-r--r--sysdeps/libm-ieee754/s_fmaxf.c29
-rw-r--r--sysdeps/libm-ieee754/s_fmaxl.c29
-rw-r--r--sysdeps/libm-ieee754/s_fmin.c29
-rw-r--r--sysdeps/libm-ieee754/s_fminf.c29
-rw-r--r--sysdeps/libm-ieee754/s_fminl.c29
-rw-r--r--sysdeps/libm-ieee754/s_fpclassify.c43
-rw-r--r--sysdeps/libm-ieee754/s_fpclassifyf.c42
-rw-r--r--sysdeps/libm-ieee754/s_fpclassifyl.c43
-rw-r--r--sysdeps/libm-ieee754/s_signbit.c32
-rw-r--r--sysdeps/libm-ieee754/s_signbitf.c32
-rw-r--r--sysdeps/libm-ieee754/s_signbitl.c32
-rw-r--r--sysdeps/m68k/fpu/__math.h336
-rw-r--r--sysdeps/m68k/fpu/e_acos.c30
-rw-r--r--sysdeps/m68k/fpu/e_fmod.c30
-rw-r--r--sysdeps/m68k/fpu/k_cos.c30
-rw-r--r--sysdeps/m68k/fpu/k_sin.c30
-rw-r--r--sysdeps/m68k/fpu/k_tan.c30
-rw-r--r--sysdeps/m68k/fpu/s_atan.c42
-rw-r--r--sysdeps/m68k/fpu/s_frexp.c44
-rw-r--r--sysdeps/m68k/fpu/s_ilogb.c42
-rw-r--r--sysdeps/m68k/fpu/s_isinf.c42
-rw-r--r--sysdeps/m68k/fpu/s_modf.c44
-rw-r--r--sysdeps/m68k/fpu/s_scalbn.c43
-rw-r--r--sysdeps/posix/Makefile11
-rw-r--r--sysdeps/unix/Makefile29
-rw-r--r--sysdeps/unix/sysv/linux/alpha/brk.S17
-rw-r--r--sysdeps/unix/sysv/linux/netinet/in_systm.h42
-rw-r--r--sysdeps/unix/sysv/linux/poll.c52
-rw-r--r--sysdeps/unix/sysv/linux/syscalls.list1
-rw-r--r--sysdeps/unix/sysv/sysv4/solaris2/Makefile2
40 files changed, 1138 insertions, 431 deletions
diff --git a/sysdeps/generic/Makefile b/sysdeps/generic/Makefile
index f4d001b7f4..5513ca998c 100644
--- a/sysdeps/generic/Makefile
+++ b/sysdeps/generic/Makefile
@@ -24,7 +24,7 @@ $(common-objpfx)bytesex.h: $(common-objpfx)det_endian
mv $@-tmp $@
$(common-objpfx)det_endian: $(sysdep_dir)/generic/det_endian.c
- $(native-compile)
+ $(common-objdir-compile)
before-compile := $(before-compile) $(common-objpfx)bytesex.h
common-generated := $(common-generated) bytesex.h det_endian
@@ -40,12 +40,10 @@ $(objpfx)siglist.c: $(objpfx)make_siglist
$(dir $<)$(notdir $<) > $@-tmp
mv $@-tmp $@
+make_siglist-CFLAGS = -DSIGNUM_H=\"$(shell pwd)/$(firstword $(wildcard \
+ $(+sysdep_dirs:%=%/signum.h)))\"
$(objpfx)make_siglist: $(sysdep_dir)/generic/make_siglist.c
- $(make-target-directory)
- signum_h=`cd $(dir $(firstword $(wildcard \
- $(+sysdep_dirs:%=%/signum.h)))); pwd`/signum.h; \
- $(native-compile) \
- -DSIGNUM_H=\"$${signum_h}\"
+ $(native-compile)
generated := $(generated) make_siglist siglist.c
endif
diff --git a/sysdeps/ieee754/dbl2mpn.c b/sysdeps/ieee754/dbl2mpn.c
index bbac525a07..749fb41737 100644
--- a/sysdeps/ieee754/dbl2mpn.c
+++ b/sysdeps/ieee754/dbl2mpn.c
@@ -1,20 +1,20 @@
-/* Copyright (C) 1993, 1994, 1995, 1996 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
+/* Copyright (C) 1993, 1994, 1995, 1996, 1997 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 Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
+ The GNU C Library 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.
-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
-Library General Public License for more details.
+ 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
+ Library General Public License for more details.
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
#include "gmp.h"
#include "gmp-impl.h"
diff --git a/sysdeps/ieee754/ldbl2mpn.c b/sysdeps/ieee754/ldbl2mpn.c
index b72af2ef47..e55bb8e029 100644
--- a/sysdeps/ieee754/ldbl2mpn.c
+++ b/sysdeps/ieee754/ldbl2mpn.c
@@ -1,20 +1,20 @@
-/* Copyright (C) 1995, 1996 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
+/* Copyright (C) 1995, 1996, 1997 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 Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
+ The GNU C Library 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.
-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
-Library General Public License for more details.
+ 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
+ Library General Public License for more details.
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
#include "gmp.h"
#include "gmp-impl.h"
diff --git a/sysdeps/ieee754/mpn2dbl.c b/sysdeps/ieee754/mpn2dbl.c
index e05d849b61..8219d18bb2 100644
--- a/sysdeps/ieee754/mpn2dbl.c
+++ b/sysdeps/ieee754/mpn2dbl.c
@@ -1,20 +1,20 @@
-/* Copyright (C) 1995, 1996 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 Library General Public License as
-published by the Free Software Foundation; either version 2 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
+/* Copyright (C) 1995, 1996, 1997 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 Library General Public License as
+ published by the Free Software Foundation; either version 2 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
#include "gmp.h"
#include "gmp-impl.h"
diff --git a/sysdeps/ieee754/mpn2flt.c b/sysdeps/ieee754/mpn2flt.c
index e9bbc490ad..37448d11d8 100644
--- a/sysdeps/ieee754/mpn2flt.c
+++ b/sysdeps/ieee754/mpn2flt.c
@@ -1,20 +1,20 @@
-/* Copyright (C) 1995 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
+/* Copyright (C) 1995, 1997 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 Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
+ The GNU C Library 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.
-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
-Library General Public License for more details.
+ 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
+ Library General Public License for more details.
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
#include "gmp.h"
#include "gmp-impl.h"
@@ -23,13 +23,13 @@ Cambridge, MA 02139, USA. */
/* Convert a multi-precision integer of the needed number of bits (24 for
float) and an integral power of two to a `float' in IEEE754 single-
- precision format. */
+ precision format. */
float
__mpn_construct_float (mp_srcptr frac_ptr, int expt, int sign)
{
union ieee754_float u;
-
+
u.ieee.negative = sign;
u.ieee.exponent = expt + IEEE754_FLOAT_BIAS;
#if BITS_PER_MP_LIMB > FLT_MANT_DIG
diff --git a/sysdeps/ieee754/mpn2ldbl.c b/sysdeps/ieee754/mpn2ldbl.c
index 03774a33c3..27a3e33266 100644
--- a/sysdeps/ieee754/mpn2ldbl.c
+++ b/sysdeps/ieee754/mpn2ldbl.c
@@ -1,20 +1,20 @@
-/* Copyright (C) 1995, 1996 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 Library General Public License as
-published by the Free Software Foundation; either version 2 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB. If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA. */
+/* Copyright (C) 1995, 1996, 1997 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 Library General Public License as
+ published by the Free Software Foundation; either version 2 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
#include "gmp.h"
#include "gmp-impl.h"
diff --git a/sysdeps/libm-ieee754/s_fdim.c b/sysdeps/libm-ieee754/s_fdim.c
new file mode 100644
index 0000000000..cdd7886068
--- /dev/null
+++ b/sysdeps/libm-ieee754/s_fdim.c
@@ -0,0 +1,36 @@
+/* Return positive difference between arguments.
+ 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 Library General Public License as
+ published by the Free Software Foundation; either version 2 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <math.h>
+
+double
+__fdim (double x, double y)
+{
+ int clsx = fpclassify (x);
+ int clsy = fpclassify (y);
+
+ if (clsx == FP_NAN || clsy == FP_NAN
+ || (y < 0 && clsx == FP_INFINITE && clsy == FP_INFINITE))
+ /* Raise invalid flag. */
+ return x - y;
+
+ return x < y ? 0 : x - y;
+}
+weak_alias (__fdim, fdim)
diff --git a/sysdeps/libm-ieee754/s_fdimf.c b/sysdeps/libm-ieee754/s_fdimf.c
new file mode 100644
index 0000000000..a8d8192c0f
--- /dev/null
+++ b/sysdeps/libm-ieee754/s_fdimf.c
@@ -0,0 +1,36 @@
+/* Return positive difference between arguments.
+ 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 Library General Public License as
+ published by the Free Software Foundation; either version 2 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <math.h>
+
+float
+__fdimf (float x, float y)
+{
+ int clsx = fpclassify (x);
+ int clsy = fpclassify (y);
+
+ if (clsx == FP_NAN || clsy == FP_NAN
+ || (y < 0 && clsx == FP_INFINITE && clsy == FP_INFINITE))
+ /* Raise invalid flag. */
+ return x - y;
+
+ return x < y ? 0 : x - y;
+}
+weak_alias (__fdimf, fdimf)
diff --git a/sysdeps/libm-ieee754/s_fdiml.c b/sysdeps/libm-ieee754/s_fdiml.c
new file mode 100644
index 0000000000..c97a668f10
--- /dev/null
+++ b/sysdeps/libm-ieee754/s_fdiml.c
@@ -0,0 +1,36 @@
+/* Return positive difference between arguments.
+ 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 Library General Public License as
+ published by the Free Software Foundation; either version 2 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <math.h>
+
+long double
+__fdiml (long double x, long double y)
+{
+ int clsx = fpclassify (x);
+ int clsy = fpclassify (y);
+
+ if (clsx == FP_NAN || clsy == FP_NAN
+ || (y < 0 && clsx == FP_INFINITE && clsy == FP_INFINITE))
+ /* Raise invalid flag. */
+ return x - y;
+
+ return x < y ? 0 : x - y;
+}
+weak_alias (__fdiml, fdiml)
diff