This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH roland/tls-init] AArch64: Define TLS_DEFINE_INIT_TP
- From: Roland McGrath <roland at hack dot frob dot com>
- To: "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Mon, 9 Jun 2014 13:52:30 -0700 (PDT)
- Subject: [PATCH roland/tls-init] AArch64: Define TLS_DEFINE_INIT_TP
- Authentication-results: sourceware.org; auth=none
Not tested at all, but this should not change anything.
OK?
Thanks,
Roland
* sysdeps/aarch64/nptl/tls.h (TLS_DEFINE_INIT_TP): New macro.
* sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c: File removed.
--- a/sysdeps/aarch64/nptl/tls.h
+++ b/sysdeps/aarch64/nptl/tls.h
@@ -93,6 +93,9 @@ typedef struct
# define TLS_INIT_TP(tcbp) \
({ __asm __volatile ("msr tpidr_el0, %0" : : "r" (tcbp)); NULL; })
+/* Value passed to 'clone' for initialization of the thread register. */
+# define TLS_DEFINE_INIT_TP(tp, pd) void *tp = (pd) + 1
+
/* Return the address of the dtv for the current thread. */
# define THREAD_DTV() \
(((tcbhead_t *) __builtin_thread_pointer ())->dtv)
--- a/sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright (C) 2005-2014 Free Software Foundation, Inc.
-
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation; either version 2.1 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-/* Value passed to 'clone' for initialization of the thread register. */
-#define TLS_VALUE (pd + 1)
-
-/* Get the real implementation. */
-#include <sysdeps/pthread/createthread.c>