diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-12-29 17:52:49 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-12-29 17:52:49 +0000 |
commit | dbbbaf53352501384c57512e2251c9d7169388af (patch) | |
tree | ee82c0b6703dcaa060e93c02e3bf108c2176e78f /sysdeps/sparc/fpu/bits/mathinline.h | |
parent | 15a2315cb457be0599d7a662e64aa54e560f96f0 (diff) | |
download | glibc-dbbbaf53352501384c57512e2251c9d7169388af.tar.gz glibc-dbbbaf53352501384c57512e2251c9d7169388af.tar.xz glibc-dbbbaf53352501384c57512e2251c9d7169388af.zip |
Update.
1999-12-29 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/alpha/sys/io.h: Don't include <asm/io.h>; remove K&R compatibility; add missing ints. * sysdeps/unix/sysv/linux/arm/sys/io.h: Remove K&R compatibility, add missing ints. * sysdeps/unix/sysv/linux/sys/io.h: Don't include <asm/io.h>. 1999-12-29 Andreas Jaeger <aj@suse.de> * manual/getopt.texi (Using Getopt): Document ordering of options. 1999-12-29 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/llseek.c: Emit link time warning for llseek. Requested by Michael Deutschmann <michael@talamasca.wkpowerlink.com>. 1999-12-14 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/scsi/scsi.h: Add new defines from Linux 2.3.32. 1999-12-28 Jakub Jelinek <jakub@redhat.com> * elf/sprof.c (load_shobj): Fix error message. (generate_call_graph): Cast %*s length argument to int. * locale/programs/localedef.c (construct_output_path): Likewise. * locale/programs/ld-ctype.c (ctype_finish): Use proper format specifier. (ctype_class_new): Likewise. * locale/programs/ld-time.c (time_finish): Likewise. * sunrpc/svc_simple.c (register_rpc): Likewise. * nscd/connections.c (nscd_run, start_threads): Use long instead of int to avoid cast warnings. * sysdeps/ieee754/ldbl-128/e_atan2l.c (__ieee754_atan2l): Kill warning. * sysdeps/ieee754/ldbl-128/s_roundl.c (__roundl): Remove unused variable se. * time/strftime.c (my_strftime): Provide wide era string when requested. * sysdeps/sparc/fpu/bits/mathinline.h (__signbit, __signbitl): Separate into 32bit and 64bit versions.
Diffstat (limited to 'sysdeps/sparc/fpu/bits/mathinline.h')
-rw-r--r-- | sysdeps/sparc/fpu/bits/mathinline.h | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/sysdeps/sparc/fpu/bits/mathinline.h b/sysdeps/sparc/fpu/bits/mathinline.h index 69591fec2a..2c4b2823de 100644 --- a/sysdeps/sparc/fpu/bits/mathinline.h +++ b/sysdeps/sparc/fpu/bits/mathinline.h @@ -110,6 +110,8 @@ __signbitf (float __x) return __u.__i < 0; } +#if __WORDSIZE == 32 + __MATH_INLINE int __signbit (double __x) { @@ -120,18 +122,27 @@ __signbit (double __x) __MATH_INLINE int __signbitl (long double __x) { - if (sizeof(long double) == 8) - { - __extension__ union { long double __l; int __i[2]; } __u = { __l: __x }; - return __u.__i[0] < 0; - } - else - { - __extension__ union { long double __l; int __i[4]; } __u = { __l: __x }; - return __u.__i[0] < 0; - } + return __signbit ((double)__x); +} + +#else /* sparc64 */ + +__MATH_INLINE int +__signbit (double __x) +{ + __extension__ union { double __d; long __i; } __u = { __d: __x }; + return __u.__i < 0; +} + +__MATH_INLINE int +__signbitl (long double __x) +{ + __extension__ union { long double __l; long __i[2]; } __u = { __l: __x }; + return __u.__i[0] < 0; } +#endif /* sparc64 */ + __MATH_INLINE double sqrt(double __x) { |