[roland/tls-init] HPPA: Define TLS_DEFINE_INIT_TP

Message ID 20140609205049.7983C2C39AC@topped-with-meat.com
State Committed
Headers

Commit Message

Roland McGrath June 9, 2014, 8:50 p.m. UTC
  Not tested at all, but this should not change anything.

OK?

Thanks,
Roland


	* sysdeps/hppa/nptl/tls.h (TLS_DEFINE_INIT_TP): New macro.
	* sysdeps/unix/sysv/linux/hppa/nptl/createthread.c: File removed.
  

Comments

Carlos O'Donell June 9, 2014, 9:03 p.m. UTC | #1
On 06/09/2014 04:50 PM, Roland McGrath wrote:
> Not tested at all, but this should not change anything.
> 
> OK?

OK.
 
> Thanks,
> Roland
> 
> 
> 	* sysdeps/hppa/nptl/tls.h (TLS_DEFINE_INIT_TP): New macro.
> 	* sysdeps/unix/sysv/linux/hppa/nptl/createthread.c: File removed.
> 
> --- a/sysdeps/hppa/nptl/tls.h
> +++ b/sysdeps/hppa/nptl/tls.h
> @@ -98,6 +98,9 @@ typedef struct
>  # define TLS_INIT_TP(tcbp) \
>    ({ __set_cr27(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 *__tcbp = (tcbhead_t *)__get_cr27();	\
> --- a/sysdeps/unix/sysv/linux/hppa/nptl/createthread.c
> +++ /dev/null
> @@ -1,22 +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 <nptl/sysdeps/pthread/createthread.c>
>
  
Roland McGrath June 9, 2014, 9:06 p.m. UTC | #2
Committed.  Would you also care to test and approve the two patches that
have been sitting on roland/nptl-hppa waiting?


Thanks,
Roland
  
Carlos O'Donell June 10, 2014, 3:41 a.m. UTC | #3
On 06/09/2014 05:06 PM, Roland McGrath wrote:
> Committed.  Would you also care to test and approve the two patches that
> have been sitting on roland/nptl-hppa waiting?

Thanks for reminding me.

Cheers,
Carlos.
  

Patch

--- a/sysdeps/hppa/nptl/tls.h
+++ b/sysdeps/hppa/nptl/tls.h
@@ -98,6 +98,9 @@  typedef struct
 # define TLS_INIT_TP(tcbp) \
   ({ __set_cr27(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 *__tcbp = (tcbhead_t *)__get_cr27();	\
--- a/sysdeps/unix/sysv/linux/hppa/nptl/createthread.c
+++ /dev/null
@@ -1,22 +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 <nptl/sysdeps/pthread/createthread.c>