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 1e28bdaabba3cdc26df028d70f9e15e055e75587 (commit)
via 5dd4d7dc03db1005c850373b3821f69d333ca675 (commit)
from a9a4e0d0f09420066968b8009e7fa2a3b3f969c6 (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 1e28bdaabba3cdc26df028d70f9e15e055e75587
Author: Waldemar Brodkorb <wbx(a)openadk.org>
Date: Mon Dec 7 07:42:25 2015 +0100
sh: add back sh2 specific assembly for clone()
In gcc 5.x there is a compile failure, for sh2 builds
as shad no longer is accepted. Strange that it is working for
4.9.x. Add back old assembly code.
commit 5dd4d7dc03db1005c850373b3821f69d333ca675
Author: Waldemar Brodkorb <wbx(a)openadk.org>
Date: Mon Dec 7 07:42:08 2015 +0100
allow linuxthreads for superh (sh2 noMMU)
-----------------------------------------------------------------------
Summary of changes:
extra/Configs/Config.in | 1 -
libc/sysdeps/linux/sh/clone.S | 16 ++++++++++++++++
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
index 9e6d095..7aeee21 100644
--- a/extra/Configs/Config.in
+++ b/extra/Configs/Config.in
@@ -515,7 +515,6 @@ config LINUXTHREADS_OLD
!TARGET_metag && \
!TARGET_mips && \
!TARGET_powerpc && \
- !TARGET_sh && \
!TARGET_sparc && \
!TARGET_x86_64 && \
!TARGET_xtensa || \
diff --git a/libc/sysdeps/linux/sh/clone.S b/libc/sysdeps/linux/sh/clone.S
index 4374a63..3ed6b25 100644
--- a/libc/sysdeps/linux/sh/clone.S
+++ b/libc/sysdeps/linux/sh/clone.S
@@ -53,8 +53,24 @@ ENTRY(__clone)
mov #+SYS_ify(clone), r3
trapa #0x15
mov r0, r1
+#ifdef __sh2__
+/* 12 arithmetic shifts for the sh2, because shad doesn't exist! */
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+ shar r1
+#else
mov #-12, r2
shad r2, r1
+#endif
not r1, r1 // r1=0 means r0 = -1 to -4095
tst r1, r1 // i.e. error in linux
bf .Lclone_end
hooks/post-receive
--
uClibc-ng - small C library for embedded systems