[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[commits] r5697 - in /fsf/trunk/ports: ./ sysdeps/m68k/ sysdeps/unix/sysv/linux/mips/nptl/bits/ sysdeps/unix/sysv/linux/mips/sys/
- To: commits@xxxxxxxxxx
- Subject: [commits] r5697 - in /fsf/trunk/ports: ./ sysdeps/m68k/ sysdeps/unix/sysv/linux/mips/nptl/bits/ sysdeps/unix/sysv/linux/mips/sys/
- From: eglibc@xxxxxxxxxx
- Date: Sat, 29 Mar 2008 07:04:26 -0000
Author: eglibc
Date: Sat Mar 29 00:04:25 2008
New Revision: 5697
Log:
Import glibc-ports-mainline for 2008-03-29
Modified:
fsf/trunk/ports/ChangeLog.m68k
fsf/trunk/ports/ChangeLog.mips
fsf/trunk/ports/sysdeps/m68k/dl-machine.h
fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h
fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/sys/tas.h
Modified: fsf/trunk/ports/ChangeLog.m68k
==============================================================================
--- fsf/trunk/ports/ChangeLog.m68k (original)
+++ fsf/trunk/ports/ChangeLog.m68k Sat Mar 29 00:04:25 2008
@@ -1,3 +1,9 @@
+2008-03-28 Maxim Kuvyrkov <maxim@xxxxxxxxxxxxxxxx>
+
+ Explicitly get address of _DYNAMIC.
+ * sysdeps/m68k/dl-machine.h (elf_machine_dynamic): Retrieve _DYNAMIC
+ from GOT instead of assuming value at GOT pointer.
+
2007-10-22 Daniel Jacobowitz <dan@xxxxxxxxxxxxxxxx>
* sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_DUPFD_CLOEXEC): Define.
Modified: fsf/trunk/ports/ChangeLog.mips
==============================================================================
--- fsf/trunk/ports/ChangeLog.mips (original)
+++ fsf/trunk/ports/ChangeLog.mips Sat Mar 29 00:04:25 2008
@@ -1,3 +1,13 @@
+2008-03-28 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h: Undefine
+ ARG_MAX if <linux/limits.h> has defined it.
+
+2008-03-28 Robin Randhawa <robin@xxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Added memory
+ barriers to enforce strict ordering on weakly ordered systems.
+
2008-03-26 David Stephenson <david.stephenson@xxxxxxxxxxxx>
Daniel Jacobowitz <dan@xxxxxxxxxxxxxxxx>
Modified: fsf/trunk/ports/sysdeps/m68k/dl-machine.h
==============================================================================
--- fsf/trunk/ports/sysdeps/m68k/dl-machine.h (original)
+++ fsf/trunk/ports/sysdeps/m68k/dl-machine.h Sat Mar 29 00:04:25 2008
@@ -33,14 +33,16 @@
}
-/* Return the link-time address of _DYNAMIC. Conveniently, this is the
- first element of the GOT. This must be inlined in a function which
- uses global data. */
+/* Return the link-time address of _DYNAMIC.
+ This must be inlined in a function which uses global data. */
static inline Elf32_Addr
elf_machine_dynamic (void)
{
- register Elf32_Addr *got asm ("%a5");
- return *got;
+ Elf32_Addr addr;
+
+ asm ("move.l _DYNAMIC@xxxxx(%%a5), %0"
+ : "=a" (addr));
+ return addr;
}
Modified: fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h
==============================================================================
--- fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h (original)
+++ fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h Sat Mar 29 00:04:25 2008
@@ -1,5 +1,5 @@
/* Minimum guaranteed maximum values for system limits. MIPS Linux version.
- Copyright (C) 1993-1998,2000,2002,2003,2004,2007
+ Copyright (C) 1993-1998,2000,2002,2003,2004,2007,2008
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -32,6 +32,9 @@
#ifndef OPEN_MAX
# define __undef_OPEN_MAX
#endif
+#ifndef ARG_MAX
+# define __undef_ARG_MAX
+#endif
/* The kernel sources contain a file with all the needed information. */
#include <linux/limits.h>
@@ -50,6 +53,11 @@
#ifdef __undef_OPEN_MAX
# undef OPEN_MAX
# undef __undef_OPEN_MAX
+#endif
+/* Have to remove ARG_MAX? */
+#ifdef __undef_ARG_MAX
+# undef ARG_MAX
+# undef __undef_ARG_MAX
#endif
/* The number of data keys per process. */
Modified: fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/sys/tas.h
==============================================================================
--- fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/sys/tas.h (original)
+++ fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/sys/tas.h Sat Mar 29 00:04:25 2008
@@ -40,17 +40,19 @@
__asm__ __volatile__
("/* Inline test and set */\n"
- "1:\n\t"
".set push\n\t"
#if _MIPS_SIM == _ABIO32
".set mips2\n\t"
#endif
+ "sync\n\t"
+ "1:\n\t"
"ll %0,%3\n\t"
"move %1,%4\n\t"
"beq %0,%4,2f\n\t"
"sc %1,%2\n\t"
+ "beqz %1,1b\n"
+ "sync\n\t"
".set pop\n\t"
- "beqz %1,1b\n"
"2:\n\t"
"/* End test and set */"
: "=&r" (r), "=&r" (t), "=m" (*p)