Loading...
include/sys/cdefs.h Libc-1725.40.4 Libc-583
--- Libc/Libc-1725.40.4/include/sys/cdefs.h
+++ Libc/Libc-583/include/sys/cdefs.h
@@ -34,8 +34,16 @@
  */
 #include_next <sys/cdefs.h>
 #ifndef _LIBC_NO_FEATURE_VERIFICATION
-#if defined(__arm64__) || defined(__arm__) || defined(__i386__) || defined(__x86_64__)
-#  include "libc-features.h"
+#if defined(__arm__)
+#  include <arm/libc-features.h>
+#elif defined(__i386__)
+#  include <i386/libc-features.h>
+#elif defined(__ppc__)
+#  include <ppc/libc-features.h>
+#elif defined(__ppc64__)
+#  include <ppc64/libc-features.h>
+#elif defined(__x86_64__)
+#  include <x86_64/libc-features.h>
 #else
 #  error "Unknown architecture."
 #endif
@@ -103,22 +111,19 @@
 #define LIBC_EXTSN(sym)		__asm("_" __STRING(sym) LIBC_SUF_EXTSN)
 #define LIBC_EXTSN_C(sym)	__asm("_" __STRING(sym) LIBC_SUF_EXTSN LIBC_SUF_NON_CANCELABLE)
 
+extern int __pthread_tsd_first;
 extern int pthread_key_init_np(int, void (*)(void *));
 
-// Not needed anymore by this header, but other headers rely on this include being here.
-#include <TargetConditionals.h>
-
-#define	__LIBC_PTHREAD_KEY(x)		(10 + (x))
+#define	__LIBC_PTHREAD_KEY(x)		(__pthread_tsd_first + (x))
 
 /*
  * Libc pthread key assignments
  */
 #define __LIBC_PTHREAD_KEY_XLOCALE	__LIBC_PTHREAD_KEY(0)
-//#define __LIBC_PTHREAD_KEY_RESERVED_WIN64	__LIBC_PTHREAD_KEY(1)
+#define __LIBC_PTHREAD_KEY_TTYNAME	__LIBC_PTHREAD_KEY(1)
 #define __LIBC_PTHREAD_KEY_LOCALTIME	__LIBC_PTHREAD_KEY(2)
 #define __LIBC_PTHREAD_KEY_GMTIME	__LIBC_PTHREAD_KEY(3)
 #define __LIBC_PTHREAD_KEY_GDTOA_BIGINT	__LIBC_PTHREAD_KEY(4)
 #define __LIBC_PTHREAD_KEY_PARSEFLOAT	__LIBC_PTHREAD_KEY(5)
-#define __LIBC_PTHREAD_KEY_TTYNAME	__LIBC_PTHREAD_KEY(6)
 
 #endif /* _LIBC_SYS_CDEFS_H_ */