This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH roland/tls-init] Tile: Define TLS_DEFINE_INIT_TP
- From: Chris Metcalf <cmetcalf at tilera dot com>
- To: Roland McGrath <roland at hack dot frob dot com>
- Cc: "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Wed, 11 Jun 2014 16:45:57 -0400
- Subject: Re: [PATCH roland/tls-init] Tile: Define TLS_DEFINE_INIT_TP
- Authentication-results: sourceware.org; auth=none
- References: <20140609204547 dot 0A8BE2C39AC at topped-with-meat dot com> <53972F54 dot 9090405 at tilera dot com> <20140611192908 dot D24532C39A6 at topped-with-meat dot com>
On 6/11/2014 3:29 PM, Roland McGrath wrote:
Your nptl/ removal all looks good, but I would encourage you to also remove
the vfork/pt-vfork distinction as we've done for most other machines now.
Something like this?
2014-06-11 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/pt-vfork.c: New file.
* sysdeps/unix/sysv/linux/tile/pt-vfork.S: Remove file.
* sysdeps/unix/sysv/linux/tile/vfork.S (__vfork): Make PT_VFORK
conditional code always true.
(__libc_vfork): New alias.
diff --git a/sysdeps/unix/sysv/linux/tile/pt-vfork.S b/sysdeps/unix/sysv/linux/tile/pt-vfork.S
deleted file mode 100644
index a6ccb1f..0000000
--- a/sysdeps/unix/sysv/linux/tile/pt-vfork.S
+++ /dev/null
@@ -1,2 +0,0 @@
-#define PT_VFORK 1 /* pid is never zero */
-#include "vfork.S"
diff --git a/sysdeps/unix/sysv/linux/tile/pt-vfork.c b/sysdeps/unix/sysv/linux/tile/pt-vfork.c
new file mode 100644
index 0000000..5fbc652
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/tile/pt-vfork.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/aarch64/pt-vfork.c>
diff --git a/sysdeps/unix/sysv/linux/tile/vfork.S b/sysdeps/unix/sysv/linux/tile/vfork.S
index 014cccf..bf7bdf4 100644
--- a/sysdeps/unix/sysv/linux/tile/vfork.S
+++ b/sysdeps/unix/sysv/linux/tile/vfork.S
@@ -38,9 +38,7 @@ ENTRY (__vfork)
shli r13, r13, 31 /* Build 0x80000000. */
}
sub r12, zero, r12 /* Negate it. */
-#ifndef PT_VFORK
CMOVEQZ r12, r12, r13 /* Replace zero pids. */
-#endif
ST4 r11, r12 /* Store the temporary PID. */
{
@@ -67,9 +65,7 @@ ENTRY (__vfork)
CMPEQ r13, r12, r12 /* Test for that value. */
sub r12, zero, r12 /* Re-negate it. */
}
-#ifndef PT_VFORK
CMOVNEZ r12, r13, zero /* Replace zero pids. */
-#endif
ST4 r11, r12 /* Restore the PID. */
1:
BNEZ r1, 0f
@@ -78,3 +74,4 @@ PSEUDO_END (__vfork)
libc_hidden_def (__vfork)
weak_alias (__vfork, vfork)
+strong_alias (__vfork, __libc_vfork)
--
Chris Metcalf, Tilera Corp.
http://www.tilera.com