diff options
author | Ulrich Drepper <drepper@redhat.com> | 1997-04-15 01:38:39 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1997-04-15 01:38:39 +0000 |
commit | 7799b7b3350fdcadc6dfb8821fb49b7772c96701 (patch) | |
tree | 21a6a07547c0e58dee9fef4082a7e7d27ddece7e /sysdeps/generic/sincos.c | |
parent | 9d8067d8f20139548df2a29b8800975ea410bc4c (diff) | |
download | glibc-7799b7b3350fdcadc6dfb8821fb49b7772c96701.zip glibc-7799b7b3350fdcadc6dfb8821fb49b7772c96701.tar.gz glibc-7799b7b3350fdcadc6dfb8821fb49b7772c96701.tar.bz2 |
Update.cvs/libc-ud-970414cvs/libc-970430cvs/libc-970429cvs/libc-970428cvs/libc-970427cvs/libc-970426cvs/libc-970425cvs/libc-970424cvs/libc-970423cvs/libc-970422cvs/libc-970421cvs/libc-970420cvs/libc-970419cvs/libc-970418cvs/libc-970417cvs/libc-970416cvs/libc-970415
1997-04-15 03:14 Ulrich Drepper <drepper@cygnus.com>
* wcsmbs/wcsstr.c: Add weak alias wcswcs for Unix98 compliance.
* math/Makefile (libm-calls): Add s_sincos and s_cproj.
* math/mathcalls.h: Add prototype for sincos.
* sysdeps/i386/fpu/__math.h: Warn about restriction on arguments to
inlined sin and cos function.
Define functions new in ISO C 9X when __USE_ISOC9X is defined.
Add optimized version of finite.
Rewrite sincos function to handle too large arguments.
* sysdeps/libm-i387/s_cos.S: Better code alignment.
* sysdeps/libm-i387/s_cosl.S: Likewise.
* sysdeps/libm-i387/s_sin.S: Likewise.
* sysdeps/libm-i387/s_sinl.S: Likewise.
* sysdeps/libm-i387/s_finite.S: Yet better code.
* sysdeps/libm-i387/s_finitef.S: Likewise.
* sysdeps/libm-i387/s_sincos.S: New file.
* sysdeps/libm-i387/s_sincosf.S: New file.
* sysdeps/libm-i387/s_sincosl.S: New file.
* sysdeps/libm-ieee754/s_sincos.c: New file.
* sysdeps/libm-ieee754/s_sincosf.c: New file.
* sysdeps/libm-ieee754/s_sincosl.c: New file.
* sysdeps/libm-ieee754/s_ccosh.c: Change to use sincos function.
* sysdeps/libm-ieee754/s_ccoshf.c: Likewise.
* sysdeps/libm-ieee754/s_ccoshl.c: Likewise.
* sysdeps/libm-ieee754/s_cexp.c: Likewise.
* sysdeps/libm-ieee754/s_cexpf.c: Likewise.
* sysdeps/libm-ieee754/s_cexpl.c: Likewise.
* sysdeps/libm-ieee754/s_csinh.c: Likewise.
* sysdeps/libm-ieee754/s_csinhf.c: Likewise.
* sysdeps/libm-ieee754/s_csinhl.c: Likewise.
* sysdeps/libm-ieee754/s_ctan.c: Likewise.
* sysdeps/libm-ieee754/s_ctanf.c: Likewise.
* sysdeps/libm-ieee754/s_ctanl.c: Likewise.
* sysdeps/libm-ieee754/s_ctanh.c: Likewise.
* sysdeps/libm-ieee754/s_ctanhf.c: Likewise.
* sysdeps/libm-ieee754/s_ctanhl.c: Likewise.
* sysdeps/libm-ieee754/s_cosl.c: Correct check for range.
* sysdeps/libm-ieee754/s_sinl.c: Likewise.
* sysdeps/libm-ieee754/s_roundtol.c: Fix typos.
* sysdeps/libm-ieee754/s_roundtoll.c: Likewise.
* nis/Makefile (services): Mention nisplus before compat.
* nis/nis_call.c (__do_niscall): Change type of variable server_len
to prevent warning.
* nis/nss_compat/compat-grp.c (getgrent_next_file_plusgroup): Add
cast to prevent warning.
* nis/nss_compat/compat-pwd.c (getpwent_next_file_plususer): Likewise.
* nis/nss_compat/compat-spwd.c (getspent_next_file_plususer): Likewise.
* nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent): Change
type of variable `i' to prevent warning.
* nis/nss_nisplus/nisplus-network.c (_nss_nisplus_parse_netent):
Likewise.
* nis/nss_nisplus/nisplus-proto.c (_nss_nisplus_parse_protoent):
Likewise.
* nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_parse_rpcent): Likewise.
* nis/nss_nisplus/nisplus-service.c (_nss_nisplus_parse_servent):
Likewise.
* sysdeps/generic/Dist: Remove old math implementation files.
* sysdeps/generic/mathimpl.h: Removed.
* sysdeps/generic/trig.h: Removed.
* sysdeps/generic/sincos.c: Removed.
* sysdeps/generic/asincos.c: Removed.
* sysdeps/generic/exp__E.c: Removed.
* sysdeps/generic/log__L.c: Removed.
1997-04-13 17:18 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
* malloc/malloc.c (fREe): Small optimization. Before returning,
add fast check whether the heap containing top can go away.
1997-04-11 16:46 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
* malloc/malloc.c (mALLOc, rEALLOc, cALLOc, mEMALIGn): When
failing to allocate a new chunk, also try the main_arena. It may
be that we are only running out of mmapped regions, and other
arenas cannot be enlarged sufficiently.
(new_heap, malloc_extend_top): Handle top_pad more consistently,
i.e. only in new_heap().
1997-04-13 21:10 Philip Blundell <pjb27@cl.cam.ac.uk>
* sysdeps/posix/Makefile: Don't try to build and run mk-stdiolim
if cross-compiling.
* configure.in: Recognise "...linuxaout" OS names and turn off ELF.
* configure.in: Add ARM support.
* sysdeps/arm/Implies: New file.
* sysdeps/arm/__longjmp.S: New file.
* sysdeps/arm/bsd-_setjmp: New file.
* sysdeps/arm/bsd-setjmp: New file.
* sysdeps/arm/bytesex.h: New file.
* sysdeps/arm/fpu_control.h: New file.
* sysdeps/arm/jmp_buf.h: New file.
* sysdeps/arm/setjmp.h: New file.
* sysdeps/arm/sysdep.h: New file.
* sysdeps/unix/arm/config.h: New file.
1997-04-14 04:03 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-ieee754/s_cproj.c: New file.
* sysdeps/libm-ieee754/s_cprojf.c: New file.
* sysdeps/libm-ieee754/s_cprojl.c: New file.
Diffstat (limited to 'sysdeps/generic/sincos.c')
-rw-r--r-- | sysdeps/generic/sincos.c | 98 |
1 files changed, 0 insertions, 98 deletions
diff --git a/sysdeps/generic/sincos.c b/sysdeps/generic/sincos.c deleted file mode 100644 index ab88560..0000000 --- a/sysdeps/generic/sincos.c +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright (c) 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef lint -static char sccsid[] = "@(#)sincos.c 8.1 (Berkeley) 6/4/93"; -#endif /* not lint */ - -#include "trig.h" -double -sin(x) -double x; -{ - double a,c,z; - - if(!finite(x)) /* sin(NaN) and sin(INF) must be NaN */ - return x-x; - x=drem(x,PI2); /* reduce x into [-PI,PI] */ - a=copysign(x,one); - if (a >= PIo4) { - if(a >= PI3o4) /* ... in [3PI/4,PI] */ - x = copysign((a = PI-a),x); - else { /* ... in [PI/4,3PI/4] */ - a = PIo2-a; /* rtn. sign(x)*C(PI/2-|x|) */ - z = a*a; - c = cos__C(z); - z *= half; - a = (z >= thresh ? half-((z-half)-c) : one-(z-c)); - return copysign(a,x); - } - } - - if (a < small) { /* rtn. S(x) */ - big+a; - return x; - } - return x+x*sin__S(x*x); -} - -double -cos(x) -double x; -{ - double a,c,z,s = 1.0; - - if(!finite(x)) /* cos(NaN) and cos(INF) must be NaN */ - return x-x; - x=drem(x,PI2); /* reduce x into [-PI,PI] */ - a=copysign(x,one); - if (a >= PIo4) { - if (a >= PI3o4) { /* ... in [3PI/4,PI] */ - a = PI-a; - s = negone; - } - else { /* ... in [PI/4,3PI/4] */ - a = PIo2-a; - return a+a*sin__S(a*a); /* rtn. S(PI/2-|x|) */ - } - } - if (a < small) { - big+a; - return s; /* rtn. s*C(a) */ - } - z = a*a; - c = cos__C(z); - z *= half; - a = (z >= thresh ? half-((z-half)-c) : one-(z-c)); - return copysign(a,s); -} |