aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/generic/ldsodefs.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-08-20 07:22:11 +0000
committerUlrich Drepper <drepper@redhat.com>2002-08-20 07:22:11 +0000
commit9a1eb38e4e9319036f37c1efbf5288a169e23324 (patch)
treed504ac0aa2bcc6a2161610badb269583c8fd0ee4 /sysdeps/generic/ldsodefs.h
parentb68364367b89e3348c09a48eb7f222b4b70d269c (diff)
downloadglibc-9a1eb38e4e9319036f37c1efbf5288a169e23324.tar
glibc-9a1eb38e4e9319036f37c1efbf5288a169e23324.tar.gz
glibc-9a1eb38e4e9319036f37c1efbf5288a169e23324.tar.bz2
glibc-9a1eb38e4e9319036f37c1efbf5288a169e23324.zip
Update.
2002-08-20 Ulrich Drepper <drepper@redhat.com> * elf/Versions [ld] (GLIBC_PRIVATE): Add _dl_get_tls_static_info. * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Move dtv memory allocation to... (allocate_dtv): ...here. New function. (_dl_allocate_tls): Change to take parameter. If parameter is non-NULL call allocate_dtv instead of _dl_allocate_tls_storage. (_dl_deallocate_tls): New parameter. Deallocate TCB only if true. (_dl_get_tls_static_info): New function. * sysdeps/generic/ldsodefs.h: Adjust prototypes of _dl_allocate_tls and _dl_deallocate_tls. Add prototype for _dl_get_tls_static_info.
Diffstat (limited to 'sysdeps/generic/ldsodefs.h')
-rw-r--r--sysdeps/generic/ldsodefs.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index cd499f61b7..361cb0b72d 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -724,8 +724,12 @@ extern size_t _dl_next_tls_modid (void) internal_function;
/* Calculate offset of the TLS blocks in the static TLS block. */
extern void _dl_determine_tlsoffset (void) internal_function;
-/* Allocate memory for static TLS block and dtv. */
-extern void *_dl_allocate_tls (void) internal_function;
+/* Allocate memory for static TLS block (unless MEM is nonzero) and dtv. */
+extern void *_dl_allocate_tls (void *mem) internal_function;
+
+/* Get size and alignment requirements of the static TLS block. */
+extern void _dl_get_tls_static_info (size_t *sizep, size_t *alignp)
+ internal_function;
/* These are internal entry points to the two halves of _dl_allocate_tls,
only used within rtld.c itself at startup time. */
@@ -735,7 +739,7 @@ extern void *_dl_allocate_tls_init (void *)
internal_function attribute_hidden;
/* Deallocate memory allocated with _dl_allocate_tls. */
-extern void _dl_deallocate_tls (void *tcb) internal_function;
+extern void _dl_deallocate_tls (void *tcb, bool dealloc_tcb) internal_function;
/* Return the symbol address given the map of the module it is in and
the symbol record. */