Changeset View
Changeset View
Standalone View
Standalone View
lib/libc/gen/tls.c
Show First 20 Lines • Show All 59 Lines • ▼ Show 20 Lines | |||||
void *_rtld_allocate_tls(void *oldtls, size_t tcbsize, size_t tcbalign); | void *_rtld_allocate_tls(void *oldtls, size_t tcbsize, size_t tcbalign); | ||||
void _rtld_free_tls(void *tls, size_t tcbsize, size_t tcbalign); | void _rtld_free_tls(void *tls, size_t tcbsize, size_t tcbalign); | ||||
void *__libc_allocate_tls(void *oldtls, size_t tcbsize, size_t tcbalign); | void *__libc_allocate_tls(void *oldtls, size_t tcbsize, size_t tcbalign); | ||||
void __libc_free_tls(void *tls, size_t tcbsize, size_t tcbalign); | void __libc_free_tls(void *tls, size_t tcbsize, size_t tcbalign); | ||||
#if defined(__amd64__) | #if defined(__amd64__) | ||||
#define TLS_TCB_ALIGN 16 | #define TLS_TCB_ALIGN 16 | ||||
#elif defined(__powerpc__) || defined(__i386__) || defined(__arm__) || \ | #elif defined(__powerpc__) || defined(__i386__) || defined(__arm__) || \ | ||||
defined(__sparc64__) || defined(__mips__) | defined(__sparc64__) || defined(__mips__) || defined(__aarch64__) | ||||
#define TLS_TCB_ALIGN sizeof(void *) | #define TLS_TCB_ALIGN sizeof(void *) | ||||
#else | #else | ||||
#error TLS_TCB_ALIGN undefined for target architecture | #error TLS_TCB_ALIGN undefined for target architecture | ||||
#endif | #endif | ||||
#if defined(__arm__) || defined(__mips__) || defined(__powerpc__) | #if defined(__arm__) || defined(__mips__) || defined(__powerpc__) || \ | ||||
defined(__aarch64__) | |||||
imp: below you have comments that say it is variant II? Which is it?
| |||||
#define TLS_VARIANT_I | #define TLS_VARIANT_I | ||||
#endif | #endif | ||||
#if defined(__i386__) || defined(__amd64__) || defined(__sparc64__) | #if defined(__i386__) || defined(__amd64__) || defined(__sparc64__) | ||||
#define TLS_VARIANT_II | #define TLS_VARIANT_II | ||||
#endif | #endif | ||||
#ifndef PIC | #ifndef PIC | ||||
▲ Show 20 Lines • Show All 244 Lines • Show Last 20 Lines |
below you have comments that say it is variant II? Which is it?