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

[commits] r3174 - in /fsf/trunk/libc: ./ elf/ login/ nptl/ nptl/sysdeps/unix/sysv/linux/alpha/ stdlib/bits/ sysdeps/sparc/sparc32/spar...



Author: eglibc
Date: Fri Aug 17 00:04:24 2007
New Revision: 3174

Log:
Import glibc-mainline for 2007-08-17

Added:
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9b/
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S
Removed:
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9b/
    fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9v/
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/elf/Makefile
    fsf/trunk/libc/login/tst-grantpt.c
    fsf/trunk/libc/nptl/ChangeLog
    fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h
    fsf/trunk/libc/stdlib/bits/stdlib-ldbl.h
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S
    fsf/trunk/libc/wcsmbs/bits/wchar-ldbl.h

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Aug 17 00:04:24 2007
@@ -1,3 +1,33 @@
+2007-08-17  Jakub Jelinek  <jakub@xxxxxxxxxx>
+
+	* login/tst-grantpt.c (test_einval): Add 3rd argument to open.
+
+2007-08-16  Jakub Jelinek  <jakub@xxxxxxxxxx>
+
+	* elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
+	to check for undefined symbols.
+
+	* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
+	If the syscall fails, set errno to the actual returned error number
+	rather than EINVAL.
+	* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
+	arguments are incorrect, set errno to EINVAL, if the syscall
+	fails, set errno to the actual returned error number.
+
+	* stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
+	* wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
+
+	* sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
+	* sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
+	file.
+	(ASI_PNF, ASI_BLK_P): Don't define.
+	* sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
+	* sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
+	file.
+	* sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
+	* sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
+	file.
+
 2007-08-15  Jakub Jelinek  <jakub@xxxxxxxxxx>
 
 	* sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising

Modified: fsf/trunk/libc/elf/Makefile
==============================================================================
--- fsf/trunk/libc/elf/Makefile (original)
+++ fsf/trunk/libc/elf/Makefile Fri Aug 17 00:04:24 2007
@@ -307,7 +307,8 @@
 		  $(filter-out $(map-file),$^) $(load-map-file)		\
 		  -Wl,-soname=$(rtld-installed-name) -T $@.lds
 	rm -f $@.lds
-	nm -u $@ | cmp -s /dev/null -
+	readelf -s $@ \
+	  | awk '($$7 ~ /^UND(|EF)$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }'
 
 # interp.c exists just to get this string into the libraries.
 CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"' \

Modified: fsf/trunk/libc/login/tst-grantpt.c
==============================================================================
--- fsf/trunk/libc/login/tst-grantpt.c (original)
+++ fsf/trunk/libc/login/tst-grantpt.c Fri Aug 17 00:04:24 2007
@@ -41,7 +41,7 @@
   int fd, ret, err;
   const char file[] = "./grantpt-einval";
 
-  fd = open (file, O_RDWR | O_CREAT);
+  fd = open (file, O_RDWR | O_CREAT, 0600);
   if (fd == -1)
     {
       printf ("open(\"%s\", O_RDWR) failed\nerrno %d (%s)\n",

Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Fri Aug 17 00:04:24 2007
@@ -1,3 +1,10 @@
+2007-08-16  Jakub Jelinek  <jakub@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/alpha/lowlevellock.h
+	(__lll_robust_timedlock): Pass private as last argument to
+	__lll_robust_timedlock_wait.
+	(__lll_unlock): Fix a pasto.
+
 2007-08-15  Jakub Jelinek  <jakub@xxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/sparc/internaltypes.h (sparc_new_sem,

Modified: fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h
==============================================================================
--- fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h (original)
+++ fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/alpha/lowlevellock.h Fri Aug 17 00:04:24 2007
@@ -219,7 +219,7 @@
 {
   int result = 0;
   if (atomic_compare_and_exchange_bool_acq (futex, id, 0) != 0)
-    result = __lll_robust_timedlock_wait (futex, abstime);
+    result = __lll_robust_timedlock_wait (futex, abstime, private);
   return result;
 }
 #define lll_robust_timedlock(futex, abstime, id, private) \
@@ -229,7 +229,7 @@
 #define __lll_unlock(futex, private) \
   (void)							\
     ({ int *__futex = (futex);					\
-    ({ int __oldval = atomic_exchange_rel (__futex, 0);		\
+       int __oldval = atomic_exchange_rel (__futex, 0);		\
        if (__builtin_expect (__oldval > 1, 0))			\
 	 lll_futex_wake (__futex, 1, private);			\
     })

Modified: fsf/trunk/libc/stdlib/bits/stdlib-ldbl.h
==============================================================================
--- fsf/trunk/libc/stdlib/bits/stdlib-ldbl.h (original)
+++ fsf/trunk/libc/stdlib/bits/stdlib-ldbl.h Fri Aug 17 00:04:24 2007
@@ -1,5 +1,5 @@
 /* -mlong-double-64 compatibility mode for <stdlib.h> functions.
-   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
@@ -31,8 +31,6 @@
 __LDBL_REDIR1_DECL (strtold_l, strtod_l)
 #endif
 
-__LDBL_REDIR1_DECL (__strtold_internal, __strtod_internal)
-
 #if defined __USE_SVID || defined __USE_XOPEN_EXTENDED
 # ifdef __USE_MISC
 __LDBL_REDIR1_DECL (qecvt, ecvt)

Added: fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S (added)
+++ fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S Fri Aug 17 00:04:24 2007
@@ -1,0 +1,2 @@
+#define XCC icc
+#include <sparc64/sparcv9b/memcpy.S>

Added: fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S (added)
+++ fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S Fri Aug 17 00:04:24 2007
@@ -1,0 +1,2 @@
+#define XCC icc
+#include <sparc64/sparcv9v/memcpy.S>

Added: fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S
==============================================================================
--- fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S (added)
+++ fsf/trunk/libc/sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S Fri Aug 17 00:04:24 2007
@@ -1,0 +1,2 @@
+#define XCC icc
+#include <sparc64/sparcv9v/memset.S>

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S Fri Aug 17 00:04:24 2007
@@ -41,9 +41,9 @@
 
 	/* sanity check arguments */
 	orcc	%i0,%g0,%g2
-	be	.Lerror
+	be	.Leinval
 	 orcc	%i1,%g0,%o1
-	be	.Lerror
+	be	.Leinval
 	 mov	%i2,%o0
 
 	/* The child_stack is the top of the stack, allocate one
@@ -70,9 +70,11 @@
 	jmpl	%i7 + 8, %g0
 	 restore %o0,%g0,%o0
 
+.Leinval:
+	mov	EINVAL, %o0
 .Lerror:
 	call	HIDDEN_JUMPTARGET(__errno_location)
-	 or	%g0,EINVAL,%i0
+	 mov	%o0, %i0
 	st	%i0,[%o0]
 	jmpl	%i7 + 8, %g0
 	 restore %g0,-1,%o0

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S Fri Aug 17 00:04:24 2007
@@ -62,33 +62,16 @@
 	/* Do the system call */
 	set	__NR_clone, %g1
 	ta	0x6d
-	bcs,pn	%xcc, 99f
+	bcs,pn	%xcc, 98f
 	 nop
 	brnz,pn	%o1, __thread_start
 	 nop
 	jmpl	%i7 + 8, %g0
 	 restore %o0, %g0, %o0
-99:
-#ifndef _LIBC_REENTRANT
-#ifdef PIC
-	call	1f
-	sethi	%hi(_GLOBAL_OFFSET_TABLE_-(99b-.)), %l7
-1:	or	%l7, %lo(_GLOBAL_OFFSET_TABLE_-(99b-.)), %l7
-	add	%l7, %o7, %l7
-	set	EINVAL, %i0
-	sethi	%hi(errno), %g2
-	or	%g2, %lo(errno), %g2
-	st	%i0, [%l7+%g2]
-#else
-	sethi	%hi(errno), %g2
-	set	EINVAL, %i0
-	st	%i0, [%g2+%lo(errno)]
-#endif
-#else
-	call	HIDDEN_JUMPTARGET(__errno_location)
-	 nop
+99:	mov	EINVAL, %o0
+98:	call	HIDDEN_JUMPTARGET(__errno_location)
+	 mov	%o0, %i0
 	st	%i0, [%o0]
-#endif
 	jmpl	%i7 + 8, %g0
 	 restore %g0,-1,%o0
 END(__clone)

Modified: fsf/trunk/libc/wcsmbs/bits/wchar-ldbl.h
==============================================================================
--- fsf/trunk/libc/wcsmbs/bits/wchar-ldbl.h (original)
+++ fsf/trunk/libc/wcsmbs/bits/wchar-ldbl.h Fri Aug 17 00:04:24 2007
@@ -1,5 +1,5 @@
 /* -mlong-double-64 compatibility mode for <wchar.h> functions.
-   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
@@ -48,8 +48,6 @@
 __LDBL_REDIR1_DECL (wcstold_l, wcstod_l);
 #endif
 
-__LDBL_REDIR1_DECL (__wcstold_internal, __wcstod_internal);
-
 #if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus
 __LDBL_REDIR_DECL (__swprintf_chk)
 __LDBL_REDIR_DECL (__vswprintf_chk)