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 "uClibc-ng - small C library for embedded systems".
The branch, 1.0 has been updated via 53c4826506f49cc3aebefed294a6e4af8bea4133 (commit) via 037a5ae08a3e4dca516bc112fbfa1d1f05d1e67b (commit) via a8cbdc3aaaca564e52ee77a9c5eff050ccd7d8a4 (commit) from 057b857cbeb0aa6e3cb1e6db4cd80ebbf9bfe274 (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 ----------------------------------------------------------------- commit 53c4826506f49cc3aebefed294a6e4af8bea4133 Author: Waldemar Brodkorb wbx@uclibc-ng.org Date: Mon Nov 30 18:32:12 2015 +0100
bfin: fix clashing with newer gcc
See here for a discussion about the problem: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47779
Latest gcc/binutils git can generate a working uClibc-ng toolchain. Binaries tested on Arcturus uCBF54x board via chroot from original firmware.
commit 037a5ae08a3e4dca516bc112fbfa1d1f05d1e67b Author: Waldemar Brodkorb wbx@uclibc-ng.org Date: Mon Nov 30 18:31:53 2015 +0100
bfin: use vfork.S again
Actually revert 711ad9f92c1cf992c4a3d9f4f709bd692be7789c, as it breaks vfork() on real hardware. So the common implementation no longer works for bfin.
commit a8cbdc3aaaca564e52ee77a9c5eff050ccd7d8a4 Author: Waldemar Brodkorb wbx@uclibc-ng.org Date: Tue Nov 24 22:07:16 2015 +0100
xtensa: avoid some compiler warnings
Signed-off-by: Max Filippov jcmvbkbc@gmail.com Signed-off-by: Waldemar Brodkorb wbx@uclibc-ng.org
-----------------------------------------------------------------------
Summary of changes: libc/sysdeps/linux/bfin/Makefile.arch | 2 +- libc/sysdeps/linux/bfin/sys/ucontext.h | 6 ++++++ libc/sysdeps/linux/bfin/vfork.S | 18 ++++++++++++++++++ .../sysdeps/unix/sysv/linux/xtensa/sysdep-cancel.h | 2 ++ 4 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 libc/sysdeps/linux/bfin/vfork.S
diff --git a/libc/sysdeps/linux/bfin/Makefile.arch b/libc/sysdeps/linux/bfin/Makefile.arch index df76ab0..8e945cd 100644 --- a/libc/sysdeps/linux/bfin/Makefile.arch +++ b/libc/sysdeps/linux/bfin/Makefile.arch @@ -8,7 +8,7 @@ CSRC-y := bsdsetjmp.c clone.c \ sram-alloc.c sram-free.c dma-memcpy.c
-SSRC-y := __longjmp.S setjmp.S bsd-_setjmp.S +SSRC-y := __longjmp.S setjmp.S bsd-_setjmp.S vfork.S
CSRC-$(UCLIBC_LINUX_SPECIFIC) += cacheflush.c
diff --git a/libc/sysdeps/linux/bfin/sys/ucontext.h b/libc/sysdeps/linux/bfin/sys/ucontext.h index 4b3654d..b6e3a40 100644 --- a/libc/sysdeps/linux/bfin/sys/ucontext.h +++ b/libc/sysdeps/linux/bfin/sys/ucontext.h @@ -32,6 +32,11 @@ typedef int greg_t; /* Container for all general registers. */ typedef greg_t gregset_t[NGREG];
+/* There is no user thread context implementation for bfin, avoid + clashing with gcc symbols, see: + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47779 +*/ +#if 0 /* Number of each register is the `gregset_t' array. */ enum { @@ -130,6 +135,7 @@ enum REG_SEQSTAT = 46 #define REG_SEQSTAT REG_SEQSTAT }; +#endif
/* Context to describe whole processor state. */ typedef struct diff --git a/libc/sysdeps/linux/bfin/vfork.S b/libc/sysdeps/linux/bfin/vfork.S new file mode 100644 index 0000000..d8e6557 --- /dev/null +++ b/libc/sysdeps/linux/bfin/vfork.S @@ -0,0 +1,18 @@ +/* + * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + */ + +#include <sys/syscall.h> + +.text +.global ___vfork +.hidden ___vfork +.type ___vfork,STT_FUNC; +.align 4 +___vfork: + p0 = __NR_vfork; + excpt 0; + rts; +.size ___vfork,.-___vfork +weak_alias(__vfork,vfork) +libc_hidden_weak(vfork) diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/xtensa/sysdep-cancel.h b/libpthread/nptl/sysdeps/unix/sysv/linux/xtensa/sysdep-cancel.h index 02fe278..be1b5ab 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/xtensa/sysdep-cancel.h +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/xtensa/sysdep-cancel.h @@ -25,6 +25,7 @@
#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt
+#ifdef __ASSEMBLER__ #if defined(__XTENSA_WINDOWED_ABI__) /* CENABLE/CDISABLE in PSEUDO below use call8, stack frame size must be * at least 32. @@ -117,6 +118,7 @@ #else #error Unsupported Xtensa ABI #endif +#endif
# ifdef IS_IN_libpthread # define CENABLE_FUNC __pthread_enable_asynccancel
hooks/post-receive