[PATCH 0/5] NPTL port to ARC
Vineet Gupta
Vineet.Gupta1 at synopsys.com
Fri Jul 25 12:09:03 UTC 2014
Hi,
Please find the patches which bring NPTL to ARC.
These rely on TLS support in tools (gcc/binutils) which can be found at
specific branches on SNPS github site.
github.com:foss-for-synopsys-dwc-arc-processors/gcc.git:arc-4.8-tls
github.com:foss-for-synopsys-dwc-arc-processors/binutils.git:arc-2.23-tls
Arguably the 3 patches could be squashed into 1st (or 1st monolithic one
could be split into fine grained), I've kept them like that as they show
fixes needed on top of initial port. But I coudl merge them if reviewers
so wish.
Please review and consider merging.
Thx,
-Vineet
Joern Rennecke (1):
ldso/ldso/arc/{dl-startup.h,dl-sysdep.h}: Use @pcl syntax.
Vineet Gupta (4):
NPTL: ARC support
ARC/NPTL: Fix __libc_sigaction redefinition with static links
ARC/NPTL: Add tests
ARC/NPTL: clone to set TP if CLONE_SETTLS
extra/Configs/defconfigs/arc/defconfig | 2 +-
include/elf.h | 12 +-
ldso/ldso/arc/dl-debug.h | 15 ++
ldso/ldso/arc/dl-startup.h | 9 +-
ldso/ldso/arc/dl-sysdep.h | 26 +-
ldso/ldso/arc/elfinterp.c | 26 +-
libc/sysdeps/linux/arc/bits/atomic.h | 57 +++++
libc/sysdeps/linux/arc/clone.S | 46 +++-
libc/sysdeps/linux/arc/jmpbuf-unwind.h | 17 ++
libc/sysdeps/linux/arc/sysdep.h | 4 +
libc/sysdeps/linux/arc/vfork.S | 13 +
libpthread/nptl/sysdeps/arc/Makefile.arch | 13 +
libpthread/nptl/sysdeps/arc/dl-tls.h | 28 +++
libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h | 32 +++
libpthread/nptl/sysdeps/arc/libc-tls.c | 27 ++
libpthread/nptl/sysdeps/arc/pthread_spin_lock.S | 21 ++
libpthread/nptl/sysdeps/arc/pthread_spin_trylock.S | 31 +++
libpthread/nptl/sysdeps/arc/pthreaddef.h | 40 +++
libpthread/nptl/sysdeps/arc/tcb-offsets.sym | 8 +
libpthread/nptl/sysdeps/arc/tls.h | 160 ++++++++++++
.../nptl/sysdeps/unix/sysv/linux/arc/Makefile | 13 +
.../nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch | 32 +++
.../unix/sysv/linux/arc/bits/pthreadtypes.h | 181 +++++++++++++
.../sysdeps/unix/sysv/linux/arc/bits/semaphore.h | 35 +++
.../nptl/sysdeps/unix/sysv/linux/arc/clone.S | 10 +
.../sysdeps/unix/sysv/linux/arc/createthread.c | 25 ++
libpthread/nptl/sysdeps/unix/sysv/linux/arc/fork.c | 30 +++
.../unix/sysv/linux/arc/libc-lowlevellock.c | 21 ++
.../sysdeps/unix/sysv/linux/arc/lowlevellock.c | 126 ++++++++++
.../sysdeps/unix/sysv/linux/arc/lowlevellock.h | 279 +++++++++++++++++++++
.../unix/sysv/linux/arc/pt-__syscall_error.c | 7 +
.../sysv/linux/arc/pt-__syscall_rt_sigaction.c | 13 +
.../sysdeps/unix/sysv/linux/arc/pt-gettimeofday.c | 11 +
.../nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S | 7 +
.../sysdeps/unix/sysv/linux/arc/pthread_once.c | 100 ++++++++
.../sysdeps/unix/sysv/linux/arc/sysdep-cancel.h | 115 +++++++++
.../nptl/sysdeps/unix/sysv/linux/arc/vfork.S | 11 +
test/tls/tls-macros.h | 30 +++
38 files changed, 1608 insertions(+), 25 deletions(-)
create mode 100644 libc/sysdeps/linux/arc/bits/atomic.h
create mode 100644 libpthread/nptl/sysdeps/arc/Makefile.arch
create mode 100644 libpthread/nptl/sysdeps/arc/dl-tls.h
create mode 100644 libpthread/nptl/sysdeps/arc/jmpbuf-unwind.h
create mode 100644 libpthread/nptl/sysdeps/arc/libc-tls.c
create mode 100644 libpthread/nptl/sysdeps/arc/pthread_spin_lock.S
create mode 100644 libpthread/nptl/sysdeps/arc/pthread_spin_trylock.S
create mode 100644 libpthread/nptl/sysdeps/arc/pthreaddef.h
create mode 100644 libpthread/nptl/sysdeps/arc/tcb-offsets.sym
create mode 100644 libpthread/nptl/sysdeps/arc/tls.h
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/bits/pthreadtypes.h
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/bits/semaphore.h
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/clone.S
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/createthread.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/fork.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/libc-lowlevellock.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/lowlevellock.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/lowlevellock.h
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-__syscall_error.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-__syscall_rt_sigaction.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-gettimeofday.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/pthread_once.c
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/sysdep-cancel.h
create mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/vfork.S
--
1.8.3.2
More information about the uClibc
mailing list