[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commits] r4514 - in /fsf/trunk/libc: ./ io/ nptl/ nptl/sysdeps/unix/sysv/linux/x86_64/ posix/ sysdeps/i386/i486/bits/ sysdeps/s390/bi...



Author: eglibc
Date: Thu Dec 13 00:04:17 2007
New Revision: 4514

Log:
Import glibc-mainline for 2007-12-13

Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/NEWS
    fsf/trunk/libc/io/fchmodat.c
    fsf/trunk/libc/nptl/ChangeLog
    fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
    fsf/trunk/libc/nptl/tst-basic7.c
    fsf/trunk/libc/posix/regcomp.c
    fsf/trunk/libc/sysdeps/i386/i486/bits/string.h
    fsf/trunk/libc/sysdeps/s390/bits/string.h
    fsf/trunk/libc/time/bug-getdate1.c
    fsf/trunk/libc/time/mktime.c

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Thu Dec 13 00:04:17 2007
@@ -1,3 +1,27 @@
+2007-12-01  Jim Meyering  <meyering@xxxxxxxxxx>
+
+	* posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
+	that would inhibit utf8-optimization of a regexp containing line-
+	or buffer-anchors, e.g., `^', `$'.
+
+2007-12-12  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	* time/bug-getdate1.c (do_test): Don't use century values which
+	aren't valid on 32-bit systems.
+
+2007-12-12  Jakub Jelinek  <jakub@xxxxxxxxxx>
+
+	* sysdeps/i386/i486/bits/string.h (memmove): Define as macro.
+	(memmove): Rename to __memmove_g, with __asm__ ("memmove").
+	* sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g,
+	__strcat_g, __strncat_g): Add __asm__.
+
+2007-12-12  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	[BZ #5477]
+	* io/fchmodat.c: Fix typo in stub_warning use.
+	Patch by Petr Salinger.
+
 2007-12-11  Ulrich Drepper  <drepper@xxxxxxxxxx>
 
 	* iconvdata/hp-thai8.c: New file.

Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Thu Dec 13 00:04:17 2007
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes.  2007-12-07
+GNU C Library NEWS -- history of user-visible changes.  2007-12-12
 Copyright (C) 1992-2006, 2007 Free Software Foundation, Inc.
 See the end for copying conditions.
 
@@ -9,7 +9,7 @@
 
 * New locales: bo_CN, bo_IN.
 
-* New encoding: HP-ROMAN9.
+* New encoding: HP-ROMAN9, HP-GREEK8, HP-THAI8, HP-TURKISH8.
 
 Version 2.7
 

Modified: fsf/trunk/libc/io/fchmodat.c
==============================================================================
--- fsf/trunk/libc/io/fchmodat.c (original)
+++ fsf/trunk/libc/io/fchmodat.c Thu Dec 13 00:04:17 2007
@@ -1,5 +1,5 @@
 /* Change the protections of file relative to open directory.  Stub version.
-   Copyright (C) 2006 Free Software Foundation, Inc.
+   Copyright (C) 2006, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -45,6 +45,6 @@
   __set_errno (ENOSYS);
   return -1;
 }
-stub_warning (fchownat)
+stub_warning (fchmodat)
 
 #include <stub-tag.h>

Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Thu Dec 13 00:04:17 2007
@@ -1,3 +1,12 @@
+2007-12-12  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	* tst-basic7.c: Allocate memory for the stack.
+
+	[BZ #5465]
+	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S [!SHARED]
+	(__pthread_cond_timedwait): Don't use VDSO.
+	Patch by Michal Januszewski.
+
 2007-12-07  Ulrich Drepper  <drepper@xxxxxxxxxx>
 
 	[BZ #5455]

Modified: fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
==============================================================================
--- fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S (original)
+++ fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S Thu Dec 13 00:04:17 2007
@@ -134,12 +134,14 @@
 	/* Only clocks 0 and 1 are allowed so far.  Both are handled in the
 	   kernel.  */
 	leaq	24(%rsp), %rsi
+# ifdef SHARED
 	movq	__vdso_clock_gettime@GOTPCREL(%rip), %rax
 	movq	(%rax), %rax
 	PTR_DEMANGLE (%rax)
 	jz	26f
 	call	*%rax
 	jmp	27f
+# endif
 26:	movl	$__NR_clock_gettime, %eax
 	syscall
 27:

Modified: fsf/trunk/libc/nptl/tst-basic7.c
==============================================================================
--- fsf/trunk/libc/nptl/tst-basic7.c (original)
+++ fsf/trunk/libc/nptl/tst-basic7.c Thu Dec 13 00:04:17 2007
@@ -6,6 +6,21 @@
 #include <unistd.h>
 #include <sys/mman.h>
 #include <sys/resource.h>
+
+static void use_stack (size_t needed);
+
+void (*use_stack_ptr) (size_t) = use_stack;
+
+static void
+use_stack (size_t needed)
+{
+  size_t sz = sysconf (_SC_PAGESIZE);
+  char *buf = alloca (sz);
+  memset (buf, '\0', sz);
+
+  if (needed > sz)
+    use_stack_ptr (needed  - sz);
+}
 
 static void
 use_up_memory (void)
@@ -38,6 +53,9 @@
   int err;
   pthread_t tid;
 
+  /* Allocate the memory needed for the stack.  */
+  use_stack_ptr (PTHREAD_STACK_MIN);
+
   use_up_memory ();
 
   err = pthread_create (&tid, NULL, child, NULL);

Modified: fsf/trunk/libc/posix/regcomp.c
==============================================================================
--- fsf/trunk/libc/posix/regcomp.c (original)
+++ fsf/trunk/libc/posix/regcomp.c Thu Dec 13 00:04:17 2007
@@ -1030,7 +1030,7 @@
 	  mb_chars = 1;
 	break;
       case ANCHOR:
-	switch (dfa->nodes[node].opr.idx)
+	switch (dfa->nodes[node].opr.ctx_type)
 	  {
 	  case LINE_FIRST:
 	  case LINE_LAST:

Modified: fsf/trunk/libc/sysdeps/i386/i486/bits/string.h
==============================================================================
--- fsf/trunk/libc/sysdeps/i386/i486/bits/string.h (original)
+++ fsf/trunk/libc/sysdeps/i386/i486/bits/string.h Thu Dec 13 00:04:17 2007
@@ -145,8 +145,13 @@
 #ifndef _FORCE_INLINES
 /* Copy N bytes of SRC to DEST, guaranteeing
    correct behavior for overlapping strings.  */
+#define memmove(dest, src, n) __memmove_g (dest, src, n)
+
+__STRING_INLINE void *__memmove_g (void *, __const void *, size_t)
+     __asm__ ("memmove");
+
 __STRING_INLINE void *
-memmove (void *__dest, __const void *__src, size_t __n)
+__memmove_g (void *__dest, __const void *__src, size_t __n)
 {
   register unsigned long int __d0, __d1, __d2;
   register void *__tmp = __dest;

Modified: fsf/trunk/libc/sysdeps/s390/bits/string.h
==============================================================================
--- fsf/trunk/libc/sysdeps/s390/bits/string.h (original)
+++ fsf/trunk/libc/sysdeps/s390/bits/string.h Thu Dec 13 00:04:17 2007
@@ -42,6 +42,8 @@
 #ifndef _FORCE_INLINES
 #define strlen(str) __strlen_g ((str))
 
+__STRING_INLINE size_t __strlen_g (__const char *) __asm__ ("strlen");
+
 __STRING_INLINE size_t
 __strlen_g (__const char *__str)
 {
@@ -62,6 +64,8 @@
 #define _HAVE_STRING_ARCH_strcpy 1
 #ifndef _FORCE_INLINES
 #define strcpy(dest, src) __strcpy_g ((dest), (src))
+
+__STRING_INLINE char *__strcpy_g (char *, __const char *) __asm ("strcpy");
 
 __STRING_INLINE char *
 __strcpy_g (char *__dest, __const char *__src)
@@ -80,6 +84,9 @@
 #define _HAVE_STRING_ARCH_strncpy 1
 #ifndef _FORCE_INLINES
 #define strncpy(dest, src, n) __strncpy_g ((dest), (src), (n))
+
+__STRING_INLINE char *__strncpy_g (char *, __const char *, size_t)
+     __asm__ ("strncpy");
 
 __STRING_INLINE char *
 __strncpy_g (char *__dest, __const char *__src, size_t __n)
@@ -122,8 +129,10 @@
 #ifndef _FORCE_INLINES
 #define strcat(dest, src) __strcat_g ((dest), (src))
 
-__STRING_INLINE char *
-__strcat_g(char *__dest, const char *__src)
+__STRING_INLINE char *__strcat_g (char *, __const char *) __asm__ ("strcat");
+
+__STRING_INLINE char *
+__strcat_g (char *__dest, __const char *__src)
 {
     char *__ret = __dest;
     char *__ptr, *__tmp;
@@ -151,6 +160,9 @@
 #define _HAVE_STRING_ARCH_strncat 1
 #ifndef _FORCE_INLINES
 #define strncat(dest, src, n) __strncat_g ((dest), (src), (n))
+
+__STRING_INLINE char *__strncat_g (char *, __const char *, size_t)
+     __asm__ ("strncat");
 
 __STRING_INLINE char *
 __strncat_g (char *__dest, __const char *__src, size_t __n)

Modified: fsf/trunk/libc/time/bug-getdate1.c
==============================================================================
--- fsf/trunk/libc/time/bug-getdate1.c (original)
+++ fsf/trunk/libc/time/bug-getdate1.c Thu Dec 13 00:04:17 2007
@@ -115,13 +115,13 @@
   res |= process_getdate_on ("25 3");
 
   output_to_template_file ("%C");
-  res |= process_getdate_on ("98");
+  res |= process_getdate_on ("20");
 
   output_to_template_file ("%C %y %m");
-  res |= process_getdate_on ("98 3 2");
+  res |= process_getdate_on ("20 3 2");
 
   output_to_template_file ("%C %y");
-  res |= process_getdate_on ("21 5");
+  res |= process_getdate_on ("20 5");
 
   /*
    * The following testcase reproduces the problem:

Modified: fsf/trunk/libc/time/mktime.c
==============================================================================
--- fsf/trunk/libc/time/mktime.c (original)
+++ fsf/trunk/libc/time/mktime.c Thu Dec 13 00:04:17 2007
@@ -1,5 +1,5 @@
 /* Convert a `struct tm' to a time_t value.
-   Copyright (C) 1993-1999, 2002-2005, 2006 Free Software Foundation, Inc.
+   Copyright (C) 1993-1999, 2002-2006, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Paul Eggert <eggert@xxxxxxxxxxx>.
 
@@ -372,7 +372,7 @@
       int diff = approx_biennia - approx_requested_biennia;
       int abs_diff = diff < 0 ? - diff : diff;
 
-      /* IRIX 4.0.5 cc miscaculates TIME_T_MIN / 3: it erroneously
+      /* IRIX 4.0.5 cc miscalculates TIME_T_MIN / 3: it erroneously
 	 gives a positive value of 715827882.  Setting a variable
 	 first then doing math on it seems to work.
 	 (ghazi@xxxxxxxxxxxxxxxx) */