mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-30 21:23:52 +08:00
IA64: Define TLS_DEFINE_INIT_TP
This commit is contained in:
parent
9c925ff964
commit
ca08746f9f
@ -1,3 +1,10 @@
|
||||
2014-08-04 Roland McGrath <roland@hack.frob.com>
|
||||
|
||||
* nptl/sysdeps/pthread/createthread.c: Include <arch-fork.h>.
|
||||
* sysdeps/unix/sysv/linux/ia64/arch-fork.h (ARCH_CLONE): New macro.
|
||||
* sysdeps/ia64/nptl/tls.h (TLS_DEFINE_INIT_TP): New macro.
|
||||
* sysdeps/unix/sysv/linux/ia64/nptl/createthread.c: File removed.
|
||||
|
||||
2014-08-04 Roland McGrath <roland@hack.frob.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/ia64/nptl/vfork.S: Moved ...
|
||||
|
@ -25,6 +25,8 @@
|
||||
#include <tls.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include <arch-fork.h>
|
||||
|
||||
|
||||
#define CLONE_SIGNAL (CLONE_SIGHAND | CLONE_THREAD)
|
||||
|
||||
|
@ -121,6 +121,10 @@ register struct pthread *__thread_self __asm__("r13");
|
||||
# define TLS_INIT_TP(thrdescr) \
|
||||
(__thread_self = (thrdescr), INIT_SYSINFO, NULL)
|
||||
|
||||
/* Value passed to 'clone2' for initialization of the thread register. */
|
||||
# define TLS_DEFINE_INIT_TP(tp, pd) \
|
||||
void *tp = (char *) (pd) + TLS_PRE_TCB_SIZE
|
||||
|
||||
/* Return the address of the dtv for the current thread. */
|
||||
# define THREAD_DTV() \
|
||||
(((tcbhead_t *)__thread_self)->dtv)
|
||||
|
@ -27,3 +27,5 @@
|
||||
INLINE_SYSCALL (clone2, 6, \
|
||||
CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD, \
|
||||
NULL, 0, NULL, &THREAD_SELF->tid, NULL)
|
||||
|
||||
#define ARCH_CLONE __clone2
|
||||
|
@ -1,25 +0,0 @@
|
||||
/* Copyright (C) 2003-2014 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jakub Jelinek <jakub@redhat.com>.
|
||||
|
||||
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 ((char *) pd + TLS_PRE_TCB_SIZE)
|
||||
|
||||
#define ARCH_CLONE __clone2
|
||||
|
||||
/* Get the real implementation. */
|
||||
#include <nptl/sysdeps/pthread/createthread.c>
|
Loading…
Reference in New Issue
Block a user