diff options
Diffstat (limited to 'libpthread/nptl/sysdeps')
-rw-r--r-- | libpthread/nptl/sysdeps/generic/dl-tls.c | 22 | ||||
-rw-r--r-- | libpthread/nptl/sysdeps/generic/libc-tls.c | 18 |
2 files changed, 20 insertions, 20 deletions
diff --git a/libpthread/nptl/sysdeps/generic/dl-tls.c b/libpthread/nptl/sysdeps/generic/dl-tls.c index ad2e84ea3..3ac73d151 100644 --- a/libpthread/nptl/sysdeps/generic/dl-tls.c +++ b/libpthread/nptl/sysdeps/generic/dl-tls.c @@ -93,7 +93,7 @@ fail: _dl_exit(30); } -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) size_t freebytes; size_t n; size_t blsize; @@ -110,7 +110,7 @@ fail: - map->l_tls_firstbyte_offset); map->l_tls_offset = _dl_tls_static_used = offset; -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) size_t used; size_t check; @@ -254,7 +254,7 @@ _dl_determine_tlsoffset (void) memory requirement for the next TLS block is smaller than the gap. */ -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) /* We simply start with zero. */ size_t offset = 0; @@ -301,7 +301,7 @@ _dl_determine_tlsoffset (void) GL(dl_tls_static_used) = offset; GL(dl_tls_static_size) = (roundup (offset + TLS_STATIC_SURPLUS, max_align) + TLS_TCB_SIZE); -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) /* The TLS blocks start right after the TCB. */ size_t offset = TLS_TCB_SIZE; size_t cnt; @@ -433,7 +433,7 @@ _dl_allocate_tls_storage (void) void *result; size_t size = GL(dl_tls_static_size); -# if TLS_DTV_AT_TP +# if defined(TLS_DTV_AT_TP) /* Memory layout is: [ TLS_PRE_TCB_SIZE ] [ TLS_TCB_SIZE ] [ TLS blocks ] ^ This should be returned. */ @@ -448,14 +448,14 @@ _dl_allocate_tls_storage (void) /* Allocate the DTV. */ void *allocated = result; -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) /* The TCB follows the TLS blocks. */ result = (char *) result + size - TLS_TCB_SIZE; /* Clear the TCB data structure. We can't ask the caller (i.e. libpthread) to do it, because we will initialize the DTV et al. */ _dl_memset (result, '\0', TLS_TCB_SIZE); -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) result = (char *) result + size - GL(dl_tls_static_size); /* Clear the TCB data structure and TLS_PRE_TCB_SIZE bytes before it. @@ -524,10 +524,10 @@ _dl_allocate_tls_init (void *result) assert (map->l_tls_modid == cnt); assert (map->l_tls_blocksize >= map->l_tls_initimage_size); -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) assert ((size_t) map->l_tls_offset >= map->l_tls_blocksize); dest = (char *) result - map->l_tls_offset; -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) dest = (char *) result + map->l_tls_offset; # else # error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" @@ -586,10 +586,10 @@ _dl_deallocate_tls (void *tcb, bool dealloc_tcb) if (dealloc_tcb) { -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) /* The TCB follows the TLS blocks. Back up to free the whole block. */ tcb -= GL(dl_tls_static_size) - TLS_TCB_SIZE; -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) /* Back up the TLS_PRE_TCB_SIZE bytes. */ tcb -= (TLS_PRE_TCB_SIZE + GL(dl_tls_static_align) - 1) & ~(GL(dl_tls_static_align) - 1); diff --git a/libpthread/nptl/sysdeps/generic/libc-tls.c b/libpthread/nptl/sysdeps/generic/libc-tls.c index d302d31c9..b78d96483 100644 --- a/libpthread/nptl/sysdeps/generic/libc-tls.c +++ b/libpthread/nptl/sysdeps/generic/libc-tls.c @@ -146,10 +146,10 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign) The initialized value of _dl_tls_static_size is provided by dl-open.c to request some surplus that permits dynamic loading of modules with IE-model TLS. */ -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) tcb_offset = roundup (memsz + GL(dl_tls_static_size), tcbalign); tlsblock = sbrk (tcb_offset + tcbsize + max_align); -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) tcb_offset = roundup (tcbsize, align ?: 1); tlsblock = sbrk (tcb_offset + memsz + max_align + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size)); @@ -169,11 +169,11 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign) // static_dtv[1].counter = 0; would be needed if not already done /* Initialize the TLS block. */ -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) static_dtv[2].pointer.val = ((char *) tlsblock + tcb_offset - roundup (memsz, align ?: 1)); static_map.l_tls_offset = roundup (memsz, align ?: 1); -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) static_dtv[2].pointer.val = (char *) tlsblock + tcb_offset; static_map.l_tls_offset = tcb_offset; # else @@ -186,11 +186,11 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign) /* Install the pointer to the dtv. */ /* Initialize the thread pointer. */ -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) INSTALL_DTV ((char *) tlsblock + tcb_offset, static_dtv); const char *lossage = TLS_INIT_TP ((char *) tlsblock + tcb_offset, 0); -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) INSTALL_DTV (tlsblock, static_dtv); const char *lossage = (char *)TLS_INIT_TP (tlsblock, 0); # else @@ -214,9 +214,9 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign) memsz = roundup (memsz, align ?: 1); -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) memsz += tcbsize; -# elif TLS_DTV_AT_TP +# elif defined(TLS_DTV_AT_TP) memsz += tcb_offset; # endif @@ -232,7 +232,7 @@ _dl_tls_setup (void) { init_slotinfo (); init_static_tls ( -# if TLS_TCB_AT_TP +# if defined(TLS_TCB_AT_TP) TLS_TCB_SIZE, # else 0, |