Community source repository for glibc add-on ports branch, release/2.12/master, updated. glibc-2.12.1-8-g86db07d

schwab@sourceware.org schwab@sourceware.org
Sun Oct 31 20:48:00 GMT 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Community source repository for glibc add-on ports".

The branch, release/2.12/master has been updated
       via  86db07dc1fbb93a5c72d4e0f880874751a19ef71 (commit)
       via  f99eaf9215849e7b0b165a1213dc996a094ffcd5 (commit)
       via  fc00a4f2984bdc98ec293e3cf538afa893a2fa14 (commit)
       via  1b896209029b0b0c22c4457157ef5b673eda3375 (commit)
       via  8f3479f13c0f4f0c31bec2b1e3505f6bd067d74e (commit)
       via  d1e2beed5050536b92c308cffbca79c32f4bb087 (commit)
      from  1fd868bff636a0fadd661355ce0cc91c1cfdf822 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=86db07dc1fbb93a5c72d4e0f880874751a19ef71

commit 86db07dc1fbb93a5c72d4e0f880874751a19ef71
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Wed Aug 25 22:55:55 2010 +0200

    m68k: fix SYSCALL_ERROR_LOAD_GOT for Coldfire
    (cherry picked from commit cf64098fc4aef77a4b708e5d92aedced16964390)

diff --git a/ChangeLog.m68k b/ChangeLog.m68k
index 20b6a6c..9c6697c 100644
--- a/ChangeLog.m68k
+++ b/ChangeLog.m68k
@@ -1,3 +1,8 @@
+2010-08-25  Andreas Schwab  <schwab@linux-m68k.org>
+
+	* sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
+	(SYSCALL_ERROR_LOAD_GOT): Use & instead of #.
+
 2010-08-02  Andreas Schwab  <schwab@linux-m68k.org>
 
 	* sysdeps/m68k/coldfire/sysdep.h: New file.
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
index e129dc1..bbbb156 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
@@ -24,7 +24,7 @@
 #include <sysdeps/unix/sysv/linux/m68k/sysdep.h>
 
 #define SYSCALL_ERROR_LOAD_GOT(reg)					      \
-    move.l #_GLOBAL_OFFSET_TABLE_@GOTPC, reg;				      \
+    move.l &_GLOBAL_OFFSET_TABLE_@GOTPC, reg;				      \
     lea (-6, %pc, reg), reg
 
 #endif

http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=f99eaf9215849e7b0b165a1213dc996a094ffcd5

commit f99eaf9215849e7b0b165a1213dc996a094ffcd5
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Aug 2 18:48:56 2010 +0200

    m68k: fix loading of GOT for Coldfire
    (cherry picked from commit 690d264a40288c024fd8c59ca3cd42e70434a018)

diff --git a/ChangeLog.m68k b/ChangeLog.m68k
index d8d1c84..20b6a6c 100644
--- a/ChangeLog.m68k
+++ b/ChangeLog.m68k
@@ -6,9 +6,13 @@
 	(PCREL_OP): Define.
 	* sysdeps/m68k/sysdep.h (PCREL_OP): Don't define here.
 	* sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h: New file.
+	(SYSCALL_ERROR_LOAD_GOT): Define.
 	* sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h: New file.
+	(SYSCALL_ERROR_LOAD_GOT): Define.
 	* sysdeps/unix/sysv/linux/m68k/sysdep.h: Don't include subordinate
 	sysdep files.
+	(SYSCALL_ERROR_HANDLER) [PIC && USE___THREAD]: Use
+	SYSCALL_ERROR_LOAD_GOT.
 
 2010-06-13  Andreas Schwab  <schwab@linux-m68k.org>
 
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
index d7c523d..e129dc1 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
@@ -23,4 +23,8 @@
 #include <sysdeps/m68k/coldfire/sysdep.h>
 #include <sysdeps/unix/sysv/linux/m68k/sysdep.h>
 
+#define SYSCALL_ERROR_LOAD_GOT(reg)					      \
+    move.l #_GLOBAL_OFFSET_TABLE_@GOTPC, reg;				      \
+    lea (-6, %pc, reg), reg
+
 #endif
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h b/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h
index 651128c..371befb 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h
@@ -23,4 +23,7 @@
 #include <sysdeps/m68k/m680x0/sysdep.h>
 #include <sysdeps/unix/sysv/linux/m68k/sysdep.h>
 
+#define SYSCALL_ERROR_LOAD_GOT(reg)					      \
+    lea (_GLOBAL_OFFSET_TABLE_@GOTPC, %pc), reg
+
 #endif
diff --git a/sysdeps/unix/sysv/linux/m68k/sysdep.h b/sysdeps/unix/sysv/linux/m68k/sysdep.h
index 3e7b105..d381189 100644
--- a/sysdeps/unix/sysv/linux/m68k/sysdep.h
+++ b/sysdeps/unix/sysv/linux/m68k/sysdep.h
@@ -117,7 +117,7 @@ SYSCALL_ERROR_LABEL:							      \
     neg.l %d0;								      \
     move.l %d0, -(%sp);							      \
     jbsr __m68k_read_tp@PLTPC;						      \
-    lea (_GLOBAL_OFFSET_TABLE_@GOTPC, %pc), %a1;			      \
+    SYSCALL_ERROR_LOAD_GOT (%a1);					      \
     add.l (SYSCALL_ERROR_ERRNO@TLSIE, %a1), %a0;			      \
     move.l (%sp)+, (%a0);						      \
     move.l &-1, %d0;							      \

http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=fc00a4f2984bdc98ec293e3cf538afa893a2fa14

commit fc00a4f2984bdc98ec293e3cf538afa893a2fa14
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Aug 2 18:47:27 2010 +0200

    m68k: cleanup sysdep files
    
    Use sysdep files in subdirectories instead of testing cpu macros.
    (cherry picked from commit 2aed4f91fd55c07675dc656dc35418d99b35c4fd)

diff --git a/ChangeLog.m68k b/ChangeLog.m68k
index 0654663..d8d1c84 100644
--- a/ChangeLog.m68k
+++ b/ChangeLog.m68k
@@ -1,3 +1,15 @@
+2010-08-02  Andreas Schwab  <schwab@linux-m68k.org>
+
+	* sysdeps/m68k/coldfire/sysdep.h: New file.
+	(PCREL_OP): Define.
+	* sysdeps/m68k/m680x0/sysdep.h: New file.
+	(PCREL_OP): Define.
+	* sysdeps/m68k/sysdep.h (PCREL_OP): Don't define here.
+	* sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h: New file.
+	* sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h: New file.
+	* sysdeps/unix/sysv/linux/m68k/sysdep.h: Don't include subordinate
+	sysdep files.
+
 2010-06-13  Andreas Schwab  <schwab@linux-m68k.org>
 
 	* sysdeps/m68k/m680x0/fpu/bits/mathinline.h: Mark all functions as
diff --git a/sysdeps/m68k/coldfire/sysdep.h b/sysdeps/m68k/coldfire/sysdep.h
new file mode 100644
index 0000000..37f66d1
--- /dev/null
+++ b/sysdeps/m68k/coldfire/sysdep.h
@@ -0,0 +1,36 @@
+/* Assembler macros for Coldfire.
+   Copyright (C) 1998, 2003, 2010 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdeps/m68k/sysdep.h>
+
+#ifdef __ASSEMBLER__
+
+/* Perform operation OP with PC-relative SRC as the first operand and
+   DST as the second.  TMP is available as a temporary if needed.  */
+# define PCREL_OP(OP, SRC, DST, TMP) \
+  move.l &SRC - ., TMP; OP (-8, %pc, TMP), DST
+
+#else
+
+/* As above, but PC is the spelling of the PC register.  We need this
+   so that the macro can be used in both normal and extended asms.  */
+# define PCREL_OP(OP, SRC, DST, TMP, PC) \
+  "move.l #" SRC " - ., " TMP "\n\t" OP " (-8, " PC ", " TMP "), " DST
+
+#endif	/* __ASSEMBLER__ */
diff --git a/sysdeps/m68k/m680x0/sysdep.h b/sysdeps/m68k/m680x0/sysdep.h
new file mode 100644
index 0000000..013bc5e
--- /dev/null
+++ b/sysdeps/m68k/m680x0/sysdep.h
@@ -0,0 +1,36 @@
+/* Assembler macros for m680x0.
+   Copyright (C) 2010 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <sysdeps/m68k/sysdep.h>
+
+#ifdef __ASSEMBLER__
+
+/* Perform operation OP with PC-relative SRC as the first operand and
+   DST as the second.  TMP is available as a temporary if needed.  */
+#define PCREL_OP(OP, SRC, DST, TMP) \
+  OP SRC(%pc), DST
+
+#else
+
+/* As above, but PC is the spelling of the PC register.  We need this
+   so that the macro can be used in both normal and extended asms.  */
+#define PCREL_OP(OP, SRC, DST, TMP, PC) \
+  OP " " SRC "(" PC "), " DST
+
+#endif	/* __ASSEMBLER__ */
diff --git a/sysdeps/m68k/sysdep.h b/sysdeps/m68k/sysdep.h
index 3698628..ce70a0d 100644
--- a/sysdeps/m68k/sysdep.h
+++ b/sysdeps/m68k/sysdep.h
@@ -1,5 +1,5 @@
 /* Assembler macros for m68k.
-   Copyright (C) 1998, 2003 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2003, 2010 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
@@ -97,26 +97,4 @@
 #  define JUMPTARGET(name)	name
 # endif
 
-/* Perform operation OP with PC-relative SRC as the first operand and
-   DST as the second.  TMP is available as a temporary if needed.  */
-#ifdef __mcoldfire__
-#define PCREL_OP(OP, SRC, DST, TMP) \
-  move.l &SRC - ., TMP; OP (-8, %pc, TMP), DST
-#else
-#define PCREL_OP(OP, SRC, DST, TMP) \
-  OP SRC(%pc), DST
-#endif
-
-#else
-
-/* As above, but PC is the spelling of the PC register.  We need this
-   so that the macro can be used in both normal and extended asms.  */
-#ifdef __mcoldfire__
-#define PCREL_OP(OP, SRC, DST, TMP, PC) \
-  "move.l #" SRC " - ., " TMP "\n\t" OP " (-8, " PC ", " TMP "), " DST
-#else
-#define PCREL_OP(OP, SRC, DST, TMP, PC) \
-  OP " " SRC "(" PC "), " DST
-#endif
-
 #endif	/* __ASSEMBLER__ */
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
new file mode 100644
index 0000000..d7c523d
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h
@@ -0,0 +1,26 @@
+/* Copyright (C) 2010 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _LINUX_M68K_COLDFIRE_SYSDEP_H
+#define _LINUX_M68K_COLDFIRE_SYSDEP_H 1
+
+#include <sysdeps/unix/sysdep.h>
+#include <sysdeps/m68k/coldfire/sysdep.h>
+#include <sysdeps/unix/sysv/linux/m68k/sysdep.h>
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h b/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h
new file mode 100644
index 0000000..651128c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h
@@ -0,0 +1,26 @@
+/* Copyright (C) 2010 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _LINUX_M68K_M680X0_SYSDEP_H
+#define _LINUX_M68K_M680X0_SYSDEP_H 1
+
+#include <sysdeps/unix/sysdep.h>
+#include <sysdeps/m68k/m680x0/sysdep.h>
+#include <sysdeps/unix/sysv/linux/m68k/sysdep.h>
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/m68k/sysdep.h b/sysdeps/unix/sysv/linux/m68k/sysdep.h
index 8bd188b..3e7b105 100644
--- a/sysdeps/unix/sysv/linux/m68k/sysdep.h
+++ b/sysdeps/unix/sysv/linux/m68k/sysdep.h
@@ -19,11 +19,6 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-#ifndef _LINUX_M68K_SYSDEP_H
-#define _LINUX_M68K_SYSDEP_H 1
-
-#include <sysdeps/unix/sysdep.h>
-#include <sysdeps/m68k/sysdep.h>
 #include <tls.h>
 
 /* Defines RTLD_PRIVATE_ERRNO.  */
@@ -333,5 +328,3 @@ SYSCALL_ERROR_LABEL:							      \
    even when statically linked.  */
 # define NEED_STATIC_SYSINFO_DSO 1
 #endif
-
-#endif

http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=1b896209029b0b0c22c4457157ef5b673eda3375

commit 1b896209029b0b0c22c4457157ef5b673eda3375
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Sun Jun 13 22:30:17 2010 +0200

    m68k: mark all inline math functions as non-throwing
    (cherry picked from commit 9166f36fcc5390efb701e50564c63cb4534bd998)

diff --git a/ChangeLog.m68k b/ChangeLog.m68k
index dbb9070..0654663 100644
--- a/ChangeLog.m68k
+++ b/ChangeLog.m68k
@@ -1,5 +1,8 @@
 2010-06-13  Andreas Schwab  <schwab@linux-m68k.org>
 
+	* sysdeps/m68k/m680x0/fpu/bits/mathinline.h: Mark all functions as
+	non-throwing.
+
 	* sysdeps/unix/sysv/linux/m68k/sys/user.h (NBPG, UPAGES)
 	(HOST_TEXT_START_ADDR, HOST_STACK_END_ADDR): Define.
 
diff --git a/sysdeps/m68k/m680x0/fpu/bits/mathinline.h b/sysdeps/m68k/m680x0/fpu/bits/mathinline.h
index 975ffd8..8a17127 100644
--- a/sysdeps/m68k/m680x0/fpu/bits/mathinline.h
+++ b/sysdeps/m68k/m680x0/fpu/bits/mathinline.h
@@ -126,7 +126,7 @@ __NTH (__signbitl (long double __x))
 /* Define a const math function.  */
 #define __m81_defun(rettype, func, args)				      \
   __m81_inline rettype __attribute__((__const__))			      \
-  __m81_u(func) args
+  __NTH (__m81_u(func) args)
 
 /* Define the three variants of a math function that has a direct
    implementation in the m68k fpu.  FUNC is the name for C (which will be
@@ -329,8 +329,8 @@ __m81_defun (long int, __CONCAT(__lrint,s), (float_type __x))		  \
 }									  \
 									  \
 __m81_inline float_type							  \
-__m81_u(__CONCAT(__fma,s))(float_type __x, float_type __y,		  \
-			   float_type __z)				  \
+__NTH (__m81_u(__CONCAT(__fma,s))(float_type __x, float_type __y,	  \
+				  float_type __z))			  \
 {									  \
   return (__x * __y) + __z;						  \
 }
@@ -346,8 +346,8 @@ __inline_functions (long double,l)
 
 # define __inline_functions(float_type, s)				\
 __m81_inline void							\
-__m81_u(__CONCAT(__sincos,s))(float_type __x, float_type *__sinx,	\
-			      float_type *__cosx)			\
+__NTH (__m81_u(__CONCAT(__sincos,s))(float_type __x, float_type *__sinx, \
+				     float_type *__cosx))		\
 {									\
   __asm ("fsincos%.x %2,%1:%0"						\
 	 : "=f" (*__sinx), "=f" (*__cosx) : "f" (__x));			\
@@ -368,13 +368,13 @@ __inline_functions (long double,l)
    NAME, to make token pasting work correctly with -traditional.  */
 # define __inline_forward_c(rettype, name, args1, args2)	\
 __MATH_INLINE rettype __attribute__((__const__))		\
-  name args1							\
+__NTH (name args1)						\
 {								\
   return __CONCAT(__,name) args2;				\
 }
 
 # define __inline_forward(rettype, name, args1, args2)	\
-__MATH_INLINE rettype name args1			\
+__MATH_INLINE rettype __NTH (name args1)		\
 {							\
   return __CONCAT(__,name) args2;			\
 }

http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=8f3479f13c0f4f0c31bec2b1e3505f6bd067d74e

commit 8f3479f13c0f4f0c31bec2b1e3505f6bd067d74e
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Sun Jun 13 21:09:38 2010 +0200

    m68k: Add required definitions to sys/user.h
    (cherry picked from commit 08b1b36387286ed1ba48c56a32e52429b5ef6963)

diff --git a/ChangeLog.m68k b/ChangeLog.m68k
index a884ec8..dbb9070 100644
--- a/ChangeLog.m68k
+++ b/ChangeLog.m68k
@@ -1,3 +1,8 @@
+2010-06-13  Andreas Schwab  <schwab@linux-m68k.org>
+
+	* sysdeps/unix/sysv/linux/m68k/sys/user.h (NBPG, UPAGES)
+	(HOST_TEXT_START_ADDR, HOST_STACK_END_ADDR): Define.
+
 2010-06-11  Andreas Schwab  <schwab@linux-m68k.org>
 
 	* sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h: Force
diff --git a/sysdeps/unix/sysv/linux/m68k/sys/user.h b/sysdeps/unix/sysv/linux/m68k/sys/user.h
index f8b19fc..2663ac6 100644
--- a/sysdeps/unix/sysv/linux/m68k/sys/user.h
+++ b/sysdeps/unix/sysv/linux/m68k/sys/user.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008 Free Software Foundation, Inc.
+/* Copyright (C) 2008, 2010 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
@@ -58,4 +58,9 @@ struct user {
 	char u_comm[32];
 };
 
+#define NBPG 4096
+#define UPAGES 1
+#define HOST_TEXT_START_ADDR u.start_code
+#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG)
+
 #endif

http://sources.redhat.com/git/gitweb.cgi?p=glibc-ports.git;a=commitdiff;h=d1e2beed5050536b92c308cffbca79c32f4bb087

commit d1e2beed5050536b92c308cffbca79c32f4bb087
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Fri Jun 11 21:58:32 2010 +0200

    m68k: force alignment of futex variables
    (cherry picked from commit 0df56592854fa25ce091883cb60fc417283383b8)

diff --git a/ChangeLog.m68k b/ChangeLog.m68k
index c7d068e..a884ec8 100644
--- a/ChangeLog.m68k
+++ b/ChangeLog.m68k
@@ -1,3 +1,8 @@
+2010-06-11  Andreas Schwab  <schwab@linux-m68k.org>
+
+	* sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h: Force
+	alignment of futex variables.
+
 2010-03-13  Andreas Schwab  <schwab@linux-m68k.org>
 
 	* sysdeps/m68k/m680x0/fpu/s_ccosh.c: Use signbit macro.
diff --git a/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h b/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h
index 0140810..832609d 100644
--- a/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h
+++ b/sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h
@@ -57,7 +57,7 @@ typedef union
 {
   struct __pthread_mutex_s
   {
-    int __lock;
+    int __lock __attribute__ ((__aligned__ (4)));
     unsigned int __count;
     int __owner;
     /* KIND must stay at this position in the structure to maintain
@@ -87,7 +87,7 @@ typedef union
 {
   struct
   {
-    int __lock;
+    int __lock __attribute__ ((__aligned__ (4)));
     unsigned int __futex;
     __extension__ unsigned long long int __total_seq;
     __extension__ unsigned long long int __wakeup_seq;
@@ -112,7 +112,7 @@ typedef unsigned int pthread_key_t;
 
 
 /* Once-only execution */
-typedef int pthread_once_t;
+typedef int __attribute__ ((__aligned__ (4))) pthread_once_t;
 
 
 #if defined __USE_UNIX98 || defined __USE_XOPEN2K
@@ -122,7 +122,7 @@ typedef union
 {
   struct
   {
-    int __lock;
+    int __lock __attribute__ ((__aligned__ (4)));
     unsigned int __nr_readers;
     unsigned int __readers_wakeup;
     unsigned int __writer_wakeup;
@@ -158,7 +158,7 @@ typedef volatile int pthread_spinlock_t;
 typedef union
 {
   char __size[__SIZEOF_PTHREAD_BARRIER_T];
-  long int __align;
+  long int __align __attribute__ ((__aligned__ (4)));
 } pthread_barrier_t;
 
 typedef union

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog.m68k                                     |   34 ++++++++++++++++++++
 .../{unix/bsd/osf/alpha => m68k/coldfire}/sysdep.h |   24 +++++++++-----
 sysdeps/m68k/m680x0/fpu/bits/mathinline.h          |   14 ++++----
 sysdeps/m68k/{libc-tls.c => m680x0/sysdep.h}       |   30 ++++++++---------
 sysdeps/m68k/sysdep.h                              |   24 +-------------
 .../sysv/linux/m68k/coldfire/sysdep.h}             |   21 ++++++------
 .../sysv/linux/m68k/m680x0/sysdep.h}               |   20 +++++------
 .../unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h  |   10 +++---
 sysdeps/unix/sysv/linux/m68k/sys/user.h            |    7 +++-
 sysdeps/unix/sysv/linux/m68k/sysdep.h              |    9 +-----
 10 files changed, 102 insertions(+), 91 deletions(-)
 copy sysdeps/{unix/bsd/osf/alpha => m68k/coldfire}/sysdep.h (56%)
 copy sysdeps/m68k/{libc-tls.c => m680x0/sysdep.h} (59%)
 copy sysdeps/{m68k/nptl/pthread_spin_lock.c => unix/sysv/linux/m68k/coldfire/sysdep.h} (71%)
 copy sysdeps/{m68k/nptl/pthread_spin_lock.c => unix/sysv/linux/m68k/m680x0/sysdep.h} (74%)


hooks/post-receive
-- 
Community source repository for glibc add-on ports



More information about the Glibc-cvs mailing list