From a5fe041c968de453889e5c2ff612785c5dd43814 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 25 Oct 2000 17:19:53 +0000 Subject: [PATCH] Update. 2000-10-25 Jakub Jelinek * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): When converting struct flock64 to struct flock and back, use fcntl commands which work on struct flock. 2000-10-25 Jakub Jelinek * math/test-misc.c (main): Only check modfl if NO_LONG_DOUBLE is not defined. * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update. * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update. --- ChangeLog | 13 +++++++++++++ math/test-misc.c | 27 ++++++++++++++------------- sysdeps/unix/sysv/linux/i386/fcntl.c | 6 ++++-- 3 files changed, 31 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5eefa95..d215af6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2000-10-25 Jakub Jelinek + + * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): When + converting struct flock64 to struct flock and back, use fcntl commands + which work on struct flock. + +2000-10-25 Jakub Jelinek + + * math/test-misc.c (main): Only check modfl if NO_LONG_DOUBLE is not + defined. + * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update. + * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update. + 2000-10-25 Ulrich Drepper * sysdeps/arm/libm-test-ulps: Updated. diff --git a/math/test-misc.c b/math/test-misc.c index 962e5f6..515277f 100644 --- a/math/test-misc.c +++ b/math/test-misc.c @@ -26,19 +26,20 @@ main (void) { int result = 0; - if (sizeof (long double) >= 12) - { - long double x = 0x100000001ll + (long double) 0.5; - long double q; - long double r; - - r = modfl (x, &q); - if (q != (long double) 0x100000001ll || r != 0.5) - { - printf ("modfl (%Lg, ...) failed\n", x); - result = 1; - } - } +#ifndef NO_LONG_DOUBLE + { + long double x = 0x100000001ll + (long double) 0.5; + long double q; + long double r; + + r = modfl (x, &q); + if (q != (long double) 0x100000001ll || r != 0.5) + { + printf ("modfl (%Lg, ...) failed\n", x); + result = 1; + } + } +#endif { double x = 0x100000001ll + (double) 0.5; diff --git a/sysdeps/unix/sysv/linux/i386/fcntl.c b/sysdeps/unix/sysv/linux/i386/fcntl.c index e67931e..c7f02b2 100644 --- a/sysdeps/unix/sysv/linux/i386/fcntl.c +++ b/sysdeps/unix/sysv/linux/i386/fcntl.c @@ -16,6 +16,7 @@ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include #include #include #include @@ -84,7 +85,7 @@ __libc_fcntl (int fd, int cmd, ...) fl.l_whence = fl64->l_whence; fl.l_pid = fl64->l_pid; - res = INLINE_SYSCALL (fcntl, 3, fd, cmd, &fl); + res = INLINE_SYSCALL (fcntl, 3, fd, F_GETLK, &fl); if (res != 0) return res; /* Everything ok, convert back. */ @@ -120,7 +121,8 @@ __libc_fcntl (int fd, int cmd, ...) fl.l_type = fl64->l_type; fl.l_whence = fl64->l_whence; fl.l_pid = fl64->l_pid; - return INLINE_SYSCALL (fcntl, 3, fd, cmd, &fl); + assert (F_SETLK - F_SETLKW == F_SETLK64 - F_SETLKW64); + return INLINE_SYSCALL (fcntl, 3, fd, cmd + F_SETLK - F_SETLK64, &fl); } default: return INLINE_SYSCALL (fcntl, 3, fd, cmd, arg); -- 2.7.4