Skip to content

Commit

Permalink
Merge commit 'origin/master' into fedora/master
Browse files Browse the repository at this point in the history
  • Loading branch information
Andreas Schwab committed Aug 17, 2009
2 parents 4af7f59 + 677760a commit 2a6cd50
Show file tree
Hide file tree
Showing 9 changed files with 65 additions and 16 deletions.
20 changes: 18 additions & 2 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
2009-08-16 Ulrich Drepper <drepper@redhat.com>

* scripts/gen-as-const.awk: Fix test for 64-bit platform.

2009-08-14 Ulrich Drepper <drepper@redhat.com>

* test-skeleton.c (signal_handler): Renamed from timeout_handler.
Also handle SIGINT. In that case only do the cleanup and then
re-raise the signal.
(main): Install handler for SIGINT.

2009-08-10 SUGIOKA Toshinobu <sugioka@itonet.co.jp>

* stdlib/longlong.h [__sh__] (udiv_qrnnd, sub_ddmmss): Add "t" to
clobber list.

2009-08-01 H.J. Lu <hongjiu.lu@intel.com>

* elf/Makefile (distribute): Add tst-audit6.c tst-auditmod6a.c
Expand Down Expand Up @@ -46,7 +62,7 @@

* sysdeps/x86_64/strcmp.S: Add support to compile with
USE_SSSE3. In this case palignr is used.
* sysdeps/x86_64/multiarch/strcmp.S (strcmp): If SSE4.3 is not
* sysdeps/x86_64/multiarch/strcmp.S (strcmp): If SSE4.2 is not
available but SSSE3 is, pick __str{,n}cmp_ssse3.
* sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
Add strcmp-ssse3 and strncmp-ssse3.
Expand Down Expand Up @@ -1806,7 +1822,7 @@
* sysdeps/x86_64/mp_clz_tab.c: New file.

2009-03-17 Ryan S. Arnold <rsa@us.ibm.com>
Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper <drepper@redhat.com>

* sysdeps/unix/sysv/linux/fallocate.c: Handle old kernel headers.
* sysdeps/unix/sysv/linux/fallocate64.c: Likewise.
Expand Down
17 changes: 17 additions & 0 deletions nptl/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
2009-08-11 Ulrich Drepper <drepper@redhat.com>

* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S: Add CFI
directives.

2009-08-10 Ulrich Drepper <drepper@redhat.com>

* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Add CFI
directives.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.

2009-08-10 Andreas Schwab <schwab@redhat.com>

* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
(__pthread_cond_signal): Don't clobber register used for syscall
number.

2009-08-08 Ulrich Drepper <drepper@redhat.com>

* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait):
Expand Down
6 changes: 3 additions & 3 deletions nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ __pthread_cond_signal:

/* Get the address of the mutex used. */
movq dep_mutex(%r8), %rcx
movl MUTEX_KIND(%rcx), %eax
andl $(ROBUST_BIT|PI_BIT), %eax
cmpl $PI_BIT, %eax
movl MUTEX_KIND(%rcx), %r11d
andl $(ROBUST_BIT|PI_BIT), %r11d
cmpl $PI_BIT, %r11d
je 9f

#ifdef __ASSUME_PRIVATE_FUTEX
Expand Down
4 changes: 3 additions & 1 deletion nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Copyright (C) 2002, 2003, 2005, 2007 Free Software Foundation, Inc.
/* Copyright (C) 2002, 2003, 2005, 2007, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
Expand Down Expand Up @@ -30,6 +30,7 @@
.type __pthread_rwlock_rdlock,@function
.align 16
__pthread_rwlock_rdlock:
cfi_startproc
xorq %r10, %r10

/* Get the lock. */
Expand Down Expand Up @@ -167,6 +168,7 @@ __pthread_rwlock_rdlock:
subq $MUTEX, %rdi
#endif
jmp 13b
cfi_endproc
.size __pthread_rwlock_rdlock,.-__pthread_rwlock_rdlock

.globl pthread_rwlock_rdlock
Expand Down
5 changes: 3 additions & 2 deletions nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Copyright (C) 2002, 2003, 2005, 2007 Free Software Foundation, Inc.
/* Copyright (C) 2002, 2003, 2005, 2007, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
Expand Down Expand Up @@ -29,6 +29,7 @@
.type __pthread_rwlock_unlock,@function
.align 16
__pthread_rwlock_unlock:
cfi_startproc
/* Get the lock. */
movl $1, %esi
xorl %eax, %eax
Expand Down Expand Up @@ -119,7 +120,7 @@ __pthread_rwlock_unlock:
#endif
callq __lll_unlock_wake
jmp 8b

cfi_endproc
.size __pthread_rwlock_unlock,.-__pthread_rwlock_unlock

.globl pthread_rwlock_unlock
Expand Down
4 changes: 3 additions & 1 deletion nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Copyright (C) 2002, 2003, 2005, 2007 Free Software Foundation, Inc.
/* Copyright (C) 2002, 2003, 2005, 2007, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
Expand Down Expand Up @@ -30,6 +30,7 @@
.type __pthread_rwlock_wrlock,@function
.align 16
__pthread_rwlock_wrlock:
cfi_startproc
xorq %r10, %r10

/* Get the lock. */
Expand Down Expand Up @@ -155,6 +156,7 @@ __pthread_rwlock_wrlock:
subq $MUTEX, %rdi
#endif
jmp 13b
cfi_endproc
.size __pthread_rwlock_wrlock,.-__pthread_rwlock_wrlock

.globl pthread_rwlock_wrlock
Expand Down
3 changes: 2 additions & 1 deletion scripts/gen-as-const.awk
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ NF >= 1 && !started {
if (test) {
print "\n#include <inttypes.h>";
print "\n#include <stdio.h>";
print "\n#if __WORDSIZE__ == 64";
print "\n#include <bits/wordsize.h>";
print "\n#if __WORDSIZE == 64";
print "\ntypedef uint64_t c_t;";
print "\n#define U(n) UINT64_C (n)";
print "\n#define PRI PRId64";
Expand Down
7 changes: 4 additions & 3 deletions stdlib/longlong.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* longlong.h -- definitions for mixed size 32/64 bit arithmetic.
Copyright (C) 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
2002, 2003, 2004, 2005, 2006, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Expand Down Expand Up @@ -918,15 +918,16 @@ UDItype __umulsidi3 (USItype, USItype);
" or r1,%0" \
: "=r" (q), "=&z" (r) \
: "1" (n1), "r" (n0), "rm" (d), "r" (&__udiv_qrnnd_16) \
: "r1", "r2", "r4", "r5", "r6", "pr"); \
: "r1", "r2", "r4", "r5", "r6", "pr", "t"); \
} while (0)

#define UDIV_TIME 80

#define sub_ddmmss(sh, sl, ah, al, bh, bl) \
__asm__ ("clrt;subc %5,%1; subc %4,%0" \
: "=r" (sh), "=r" (sl) \
: "0" (ah), "1" (al), "r" (bh), "r" (bl))
: "0" (ah), "1" (al), "r" (bh), "r" (bl) \
: "t")

#endif /* __sh__ */

Expand Down
15 changes: 12 additions & 3 deletions test-skeleton.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Skeleton for test programs.
Copyright (C) 1998,2000-2004, 2005 Free Software Foundation, Inc.
Copyright (C) 1998,2000-2004, 2005, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
Expand Down Expand Up @@ -132,7 +132,7 @@ create_temp_file (const char *base, char **filename)
/* Timeout handler. We kill the child and exit with an error. */
static void
__attribute__ ((noreturn))
timeout_handler (int sig __attribute__ ((unused)))
signal_handler (int sig __attribute__ ((unused)))
{
int killed;
int status;
Expand Down Expand Up @@ -167,6 +167,12 @@ timeout_handler (int sig __attribute__ ((unused)))
CLEANUP_HANDLER;
#endif

if (sig == SIGINT)
{
signal (sig, SIG_DFL);
raise (sig);
}

/* If we expected this signal: good! */
#ifdef EXPECTED_SIGNAL
if (EXPECTED_SIGNAL == SIGALRM)
Expand Down Expand Up @@ -325,9 +331,12 @@ main (int argc, char *argv[])
/* Default timeout is two seconds. */
# define TIMEOUT 2
#endif
signal (SIGALRM, timeout_handler);
signal (SIGALRM, signal_handler);
alarm (TIMEOUT * timeoutfactor);

/* Make sure we clean up if the wrapper gets interrupted. */
signal (SIGINT, signal_handler);

/* Wait for the regular termination. */
termpid = TEMP_FAILURE_RETRY (waitpid (pid, &status, 0));
if (termpid == -1)
Expand Down

0 comments on commit 2a6cd50

Please sign in to comment.