aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog95
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/Makefile2
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/Versions6
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/Makefile1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/cpu_relax.S1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/pthread_barrier_wait.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_post.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_timedwait.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_trywait.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_wait.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile6
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Versions7
-rw-r--r--sysdeps/sparc/nptl/internaltypes.h (renamed from nptl/sysdeps/unix/sysv/linux/sparc/internaltypes.h)3
-rw-r--r--sysdeps/sparc/nptl/pthread_barrier_destroy.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c)0
-rw-r--r--sysdeps/sparc/nptl/pthread_barrier_init.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c)0
-rw-r--r--sysdeps/sparc/nptl/pthread_barrier_wait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c)0
-rw-r--r--sysdeps/sparc/nptl/sem_init.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c)0
-rw-r--r--sysdeps/sparc/nptl/sem_post.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c)0
-rw-r--r--sysdeps/sparc/nptl/sem_timedwait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c)0
-rw-r--r--sysdeps/sparc/nptl/sem_wait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sem_wait.c)0
-rw-r--r--sysdeps/sparc/sparc32/nptl/lowlevellock.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c)0
-rw-r--r--sysdeps/sparc/sparc32/nptl/pthread_barrier_wait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c)0
-rw-r--r--sysdeps/sparc/sparc32/nptl/sem_post.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_post.c)0
-rw-r--r--sysdeps/sparc/sparc32/nptl/sem_timedwait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c)0
-rw-r--r--sysdeps/sparc/sparc32/nptl/sem_trywait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_trywait.c)0
-rw-r--r--sysdeps/sparc/sparc32/nptl/sem_wait.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c)0
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/Makefile4
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/nptl/cpu_relax.S1
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/nptl/pthread_barrier_wait.c1
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/nptl/sem_post.c1
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/nptl/sem_timedwait.c1
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/nptl/sem_trywait.c1
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/nptl/sem_wait.c1
-rw-r--r--sysdeps/sparc/sparc64/nptl/cpu_relax.S (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/cpu_relax.S)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/Makefile5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/Versions8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/aio_cancel.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/aio_cancel.c)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/lowlevellock.h (renamed from nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/Makefile5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/Versions8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c)0
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c (renamed from nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c)0
47 files changed, 133 insertions, 29 deletions
diff --git a/ChangeLog b/ChangeLog
index 8cbe2ff..99e6895 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,98 @@
+2014-06-20 Roland McGrath <roland@hack.frob.com>
+
+ * sysdeps/unix/sysv/linux/sparc/Makefile [$(subdir) = nptl]
+ (libpthread-routines): Add sysdep.
+ * nptl/sysdeps/unix/sysv/linux/sparc/Makefile: File removed.
+ * sysdeps/unix/sysv/linux/sparc/Versions
+ (libpthread: GLIBC_2.3.3): New version set.
+ * nptl/sysdeps/unix/sysv/linux/sparc/Versions: File removed.
+ * nptl/sysdeps/unix/sysv/linux/sparc/aio_cancel.c: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/aio_cancel.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/internaltypes.h: Moved ...
+ * sysdeps/sparc/nptl/internaltypes.h: ... here. Use #include_next.
+ * nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c:
+ Moved ...
+ * sysdeps/sparc/nptl/pthread_barrier_destroy.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c: Moved ...
+ * sysdeps/sparc/nptl/pthread_barrier_init.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c: Moved ...
+ * sysdeps/sparc/nptl/pthread_barrier_wait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c: Moved ...
+ * sysdeps/sparc/nptl/sem_init.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c: Moved ...
+ * sysdeps/sparc/nptl/sem_post.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c: Moved ...
+ * sysdeps/sparc/nptl/sem_timedwait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sem_wait.c: Moved ...
+ * sysdeps/sparc/nptl/sem_wait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/lowlevellock.h: ... here.
+ * sysdeps/sparc/sparc32/sparcv9/Makefile [$(subdir) = nptl]
+ (libpthread-routines): Add cpu_relax.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/Makefile:
+ File removed.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/Versions
+ (librt: GLIBC_2.3.3): New version set.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Versions: File removed.
+ * sysdeps/sparc/sparc64/nptl/Makefile: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile [$(subdir) = nptl]
+ (CFLAGS-pause.c, CFLAGS-sigsuspend.c): New variables.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: File removed.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c: Moved ...
+ * sysdeps/sparc/sparc32/nptl/lowlevellock.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c:
+ Moved ...
+ * sysdeps/sparc/sparc32/nptl/pthread_barrier_wait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_post.c: Moved ...
+ * sysdeps/sparc/sparc32/nptl/sem_post.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c: Moved ...
+ * sysdeps/sparc/sparc32/nptl/sem_timedwait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_trywait.c: Moved ...
+ * sysdeps/sparc/sparc32/nptl/sem_trywait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c: Moved ...
+ * sysdeps/sparc/sparc32/nptl/sem_wait.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/cpu_relax.S:
+ Moved ...
+ * sysdeps/sparc/sparc32/sparcv9/nptl/cpu_relax.S: ... here.
+ Update #include.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/pthread_barrier_wait.c:
+ Moved ...
+ * sysdeps/sparc/sparc32/sparcv9/nptl/pthread_barrier_wait.c: ... here.
+ Update #include.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_post.c:
+ Moved ...
+ * sysdeps/sparc/sparc32/sparcv9/nptl/sem_post.c: ... here.
+ Update #include.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_timedwait.c:
+ Moved ...
+ * sysdeps/sparc/sparc32/sparcv9/nptl/sem_timedwait.c: ... here.
+ Update #include.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_trywait.c:
+ Moved ...
+ * sysdeps/sparc/sparc32/sparcv9/nptl/sem_trywait.c: ... here.
+ Update #include.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_wait.c:
+ Moved ...
+ * sysdeps/sparc/sparc32/sparcv9/nptl/sem_wait.c: ... here.
+ Update #include.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/cpu_relax.S: Moved ...
+ * sysdeps/sparc/sparc64/nptl/cpu_relax.S: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c:
+ Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c: ... here.
+ * nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c: Moved ...
+ * sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c: ... here.
+
2014-06-20 Joseph Myers <joseph@codesourcery.com>
* nptl/pthread_cond_wait.c: Include <kernel-features.h>.
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/Makefile b/nptl/sysdeps/unix/sysv/linux/sparc/Makefile
deleted file mode 100644
index e98c9bd..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/Makefile
+++ /dev/null
@@ -1,2 +0,0 @@
-# pull in __syscall_error routine
-libpthread-routines += sysdep
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/Versions b/nptl/sysdeps/unix/sysv/linux/sparc/Versions
deleted file mode 100644
index d102772..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/Versions
+++ /dev/null
@@ -1,6 +0,0 @@
-libpthread {
- GLIBC_2.3.3 {
- # Changed PTHREAD_STACK_MIN.
- pthread_attr_setstack; pthread_attr_setstacksize;
- }
-}
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/Makefile b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/Makefile
deleted file mode 100644
index f7acc01..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-libpthread-routines += cpu_relax
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/cpu_relax.S b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/cpu_relax.S
deleted file mode 100644
index 4ac4d14..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/cpu_relax.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <sparc64/cpu_relax.S>
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/pthread_barrier_wait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/pthread_barrier_wait.c
deleted file mode 100644
index 2d32e58..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/pthread_barrier_wait.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../pthread_barrier_wait.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_post.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_post.c
deleted file mode 100644
index 73d7c56..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_post.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../sem_post.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_timedwait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_timedwait.c
deleted file mode 100644
index 03945b7..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_timedwait.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../sem_timedwait.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_trywait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_trywait.c
deleted file mode 100644
index aae46f7..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_trywait.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../../sem_trywait.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_wait.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_wait.c
deleted file mode 100644
index a5dbc5a..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/sem_wait.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../sem_wait.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile b/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
deleted file mode 100644
index 656d2e0..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-libpthread-routines += cpu_relax
-
-ifeq ($(subdir),nptl)
-CFLAGS-pause.c += -fexceptions
-CFLAGS-sigsuspend.c += -fexceptions
-endif
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Versions b/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Versions
deleted file mode 100644
index 3b111dd..0000000
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Versions
+++ /dev/null
@@ -1,7 +0,0 @@
-librt {
- GLIBC_2.3.3 {
- # Changed timer_t.
- timer_create; timer_delete; timer_getoverrun; timer_gettime;
- timer_settime;
- }
-}
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/internaltypes.h b/sysdeps/sparc/nptl/internaltypes.h
index 4f400a3..e5c2740 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/internaltypes.h
+++ b/sysdeps/sparc/nptl/internaltypes.h
@@ -1,5 +1,6 @@
#ifndef _INTERNALTYPES_H
-#include "../internaltypes.h"
+
+#include_next <internaltypes.h>
union sparc_pthread_barrier
{
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c b/sysdeps/sparc/nptl/pthread_barrier_destroy.c
index 2221a27..2221a27 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_destroy.c
+++ b/sysdeps/sparc/nptl/pthread_barrier_destroy.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c b/sysdeps/sparc/nptl/pthread_barrier_init.c
index 6af6863..6af6863 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_init.c
+++ b/sysdeps/sparc/nptl/pthread_barrier_init.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c b/sysdeps/sparc/nptl/pthread_barrier_wait.c
index ed5c1f7..ed5c1f7 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/pthread_barrier_wait.c
+++ b/sysdeps/sparc/nptl/pthread_barrier_wait.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c b/sysdeps/sparc/nptl/sem_init.c
index cbefdc4..cbefdc4 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_init.c
+++ b/sysdeps/sparc/nptl/sem_init.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c b/sysdeps/sparc/nptl/sem_post.c
index d83b9d8..d83b9d8 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_post.c
+++ b/sysdeps/sparc/nptl/sem_post.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c b/sysdeps/sparc/nptl/sem_timedwait.c
index 0557e4e..0557e4e 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_timedwait.c
+++ b/sysdeps/sparc/nptl/sem_timedwait.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sem_wait.c b/sysdeps/sparc/nptl/sem_wait.c
index cfa1ef3..cfa1ef3 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sem_wait.c
+++ b/sysdeps/sparc/nptl/sem_wait.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c b/sysdeps/sparc/sparc32/nptl/lowlevellock.c
index 8384281..8384281 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c
+++ b/sysdeps/sparc/sparc32/nptl/lowlevellock.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c b/sysdeps/sparc/sparc32/nptl/pthread_barrier_wait.c
index 0fed908..0fed908 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pthread_barrier_wait.c
+++ b/sysdeps/sparc/sparc32/nptl/pthread_barrier_wait.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_post.c b/sysdeps/sparc/sparc32/nptl/sem_post.c
index d3846c0..d3846c0 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_post.c
+++ b/sysdeps/sparc/sparc32/nptl/sem_post.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c b/sysdeps/sparc/sparc32/nptl/sem_timedwait.c
index 5c48cb3..5c48cb3 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_timedwait.c
+++ b/sysdeps/sparc/sparc32/nptl/sem_timedwait.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_trywait.c b/sysdeps/sparc/sparc32/nptl/sem_trywait.c
index 7d0fc55..7d0fc55 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_trywait.c
+++ b/sysdeps/sparc/sparc32/nptl/sem_trywait.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c b/sysdeps/sparc/sparc32/nptl/sem_wait.c
index 8c072fe..8c072fe 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c
+++ b/sysdeps/sparc/sparc32/nptl/sem_wait.c
diff --git a/sysdeps/sparc/sparc32/sparcv9/Makefile b/sysdeps/sparc/sparc32/sparcv9/Makefile
index 7d475b0..36f889e 100644
--- a/sysdeps/sparc/sparc32/sparcv9/Makefile
+++ b/sysdeps/sparc/sparc32/sparcv9/Makefile
@@ -18,3 +18,7 @@ ASFLAGS-.op += -Wa,-Av9a
ASFLAGS-.og += -Wa,-Av9a
ASFLAGS-.oS += -Wa,-Av9a
endif
+
+ifeq ($(subdir), nptl)
+libpthread-routines += cpu_relax
+endif
diff --git a/sysdeps/sparc/sparc32/sparcv9/nptl/cpu_relax.S b/sysdeps/sparc/sparc32/sparcv9/nptl/cpu_relax.S
new file mode 100644
index 0000000..fa88647
--- /dev/null
+++ b/sysdeps/sparc/sparc32/sparcv9/nptl/cpu_relax.S
@@ -0,0 +1 @@
+#include <sysdeps/sparc/sparc64/nptl/cpu_relax.S>
diff --git a/sysdeps/sparc/sparc32/sparcv9/nptl/pthread_barrier_wait.c b/sysdeps/sparc/sparc32/sparcv9/nptl/pthread_barrier_wait.c
new file mode 100644
index 0000000..8336f5e
--- /dev/null
+++ b/sysdeps/sparc/sparc32/sparcv9/nptl/pthread_barrier_wait.c
@@ -0,0 +1 @@
+#include <sysdeps/sparc/nptl/pthread_barrier_wait.c>
diff --git a/sysdeps/sparc/sparc32/sparcv9/nptl/sem_post.c b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_post.c
new file mode 100644
index 0000000..3c4b940
--- /dev/null
+++ b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_post.c
@@ -0,0 +1 @@
+#include <sysdeps/sparc/nptl/sem_post.c>
diff --git a/sysdeps/sparc/sparc32/sparcv9/nptl/sem_timedwait.c b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_timedwait.c
new file mode 100644
index 0000000..f19b2c5
--- /dev/null
+++ b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_timedwait.c
@@ -0,0 +1 @@
+#include <sysdeps/sparc/nptl/sem_timedwait.c>
diff --git a/sysdeps/sparc/sparc32/sparcv9/nptl/sem_trywait.c b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_trywait.c
new file mode 100644
index 0000000..80157c5
--- /dev/null
+++ b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_trywait.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/sem_trywait.c>
diff --git a/sysdeps/sparc/sparc32/sparcv9/nptl/sem_wait.c b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_wait.c
new file mode 100644
index 0000000..b6d8287
--- /dev/null
+++ b/sysdeps/sparc/sparc32/sparcv9/nptl/sem_wait.c
@@ -0,0 +1 @@
+#include <sysdeps/sparc/nptl/sem_wait.c>
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/cpu_relax.S b/sysdeps/sparc/sparc64/nptl/cpu_relax.S
index 9d45eb7..9d45eb7 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/cpu_relax.S
+++ b/sysdeps/sparc/sparc64/nptl/cpu_relax.S
diff --git a/sysdeps/unix/sysv/linux/sparc/Makefile b/sysdeps/unix/sysv/linux/sparc/Makefile
index 96b783e..e67aecf 100644
--- a/sysdeps/unix/sysv/linux/sparc/Makefile
+++ b/sysdeps/unix/sysv/linux/sparc/Makefile
@@ -11,3 +11,8 @@ endif
ifeq ($(subdir),sysvipc)
sysdep_routines += getshmlba
endif
+
+ifeq ($(subdir),nptl)
+# pull in __syscall_error routine
+libpthread-routines += sysdep
+endif
diff --git a/sysdeps/unix/sysv/linux/sparc/Versions b/sysdeps/unix/sysv/linux/sparc/Versions
index 5d31d1d..4dc1cd7 100644
--- a/sysdeps/unix/sysv/linux/sparc/Versions
+++ b/sysdeps/unix/sysv/linux/sparc/Versions
@@ -30,6 +30,14 @@ libc {
__getshmlba;
}
}
+
+libpthread {
+ GLIBC_2.3.3 {
+ # Changed PTHREAD_STACK_MIN.
+ pthread_attr_setstack; pthread_attr_setstacksize;
+ }
+}
+
librt {
GLIBC_2.3 {
# AIO functions.
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/aio_cancel.c b/sysdeps/unix/sysv/linux/sparc/aio_cancel.c
index 0d6da82..0d6da82 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/aio_cancel.c
+++ b/sysdeps/unix/sysv/linux/sparc/aio_cancel.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h b/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
index d4ed7a9..d4ed7a9 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
+++ b/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h b/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h
index fd9968f..fd9968f 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile b/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
index 715af3d..7ea433f 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
@@ -7,3 +7,8 @@ LD += -melf64_sparc
ifeq ($(subdir),stdlib)
sysdep_routines += __start_context
endif
+
+ifeq ($(subdir),nptl)
+CFLAGS-pause.c += -fexceptions
+CFLAGS-sigsuspend.c += -fexceptions
+endif
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/Versions b/sysdeps/unix/sysv/linux/sparc/sparc64/Versions
index cfcc15b..fbea1bb 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/Versions
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/Versions
@@ -9,3 +9,11 @@ libc {
wordexp;
}
}
+
+librt {
+ GLIBC_2.3.3 {
+ # Changed timer_t.
+ timer_create; timer_delete; timer_getoverrun; timer_gettime;
+ timer_settime;
+ }
+}
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h b/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h
index 4dad994..4dad994 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c
index d307135..d307135 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_create.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c
index 2dd94f5..2dd94f5 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_delete.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c
index 22eaff5..22eaff5 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_getoverr.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c
index cea524b..cea524b 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_gettime.c
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c
index fa23114..fa23114 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c