2000-02-14  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/posix/sigwait.c: Don't look for signal 0 since it does
	not exist.  Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1601).

	* sysdeps/i386/fpu/s_nearbyint.S: Disable raising exception, not
	enable it.  Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1600).
	* sysdeps/i386/fpu/s_nearbyintf.S: Likewise.
	* sysdeps/i386/fpu/s_nearbyintf.l: Likewise.
This commit is contained in:
Ulrich Drepper 2000-02-15 02:00:33 +00:00
parent 1ca7cbcb45
commit ec91ea7ccb
6 changed files with 24 additions and 6 deletions

View File

@ -1,3 +1,13 @@
2000-02-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/sigwait.c: Don't look for signal 0 since it does
not exist. Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1601).
* sysdeps/i386/fpu/s_nearbyint.S: Disable raising exception, not
enable it. Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1600).
* sysdeps/i386/fpu/s_nearbyintf.S: Likewise.
* sysdeps/i386/fpu/s_nearbyintf.l: Likewise.
2000-02-14 Andreas Jaeger <aj@suse.de>
* elf/rtld.c (dl_main): Fix check for references to dynamic linker.

View File

@ -1,3 +1,11 @@
2000-02-14 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_timedwait_relative_old): Tight loop with
nanosleep does not work either. Get absolute time inside the
loop.
(pthread_cond_timedwait_relative_new): Likewise.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-02-13 Andreas Jaeger <aj@suse.de>
* condvar.c (pthread_cond_timedwait_relative_new): Fix last patch.

View File

@ -12,7 +12,7 @@ ENTRY(__nearbyint)
pushl %ecx
fnstcw (%esp)
movl (%esp), %eax
andl $~0x20, %eax
orl $0x20, %eax
movl %eax, 4(%esp)
fldcw 4(%esp)
frndint

View File

@ -12,7 +12,7 @@ ENTRY(__nearbyintf)
pushl %ecx
fnstcw (%esp)
movl (%esp), %eax
andl $~0x20, %eax
orl $0x20, %eax
movl %eax, 4(%esp)
fldcw 4(%esp)
frndint

View File

@ -12,7 +12,7 @@ ENTRY(__nearbyintl)
pushl %ecx
fnstcw (%esp)
movl (%esp), %eax
andl $~0x20, %eax
orl $0x20, %eax
movl %eax, 4(%esp)
fldcw 4(%esp)
frndint

View File

@ -1,5 +1,5 @@
/* Implementation of sigwait function from POSIX.1c.
Copyright (C) 1996, 1997, 1999 Free Software Foundation, Inc.
Copyright (C) 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@ -52,7 +52,7 @@ __sigwait (const sigset_t *set, int *sig)
value which does not describe a legal signal number. */
was_sig = -1;
for (this = 0; this < NSIG; ++this)
for (this = 1; this < NSIG; ++this)
if (__sigismember (set, this))
{
/* Unblock this signal. */
@ -69,7 +69,7 @@ __sigwait (const sigset_t *set, int *sig)
restore_handler:
save_errno = errno;
while (--this >= 0)
while (--this >= 1)
if (__sigismember (set, this))
/* We ignore errors here since we must restore all handlers. */
__sigaction (this, &saved[this], NULL);