Searched refs:modules (Results 1 – 8 of 8) sorted by relevance
184 TlsModules& modules = __libc_shared_globals()->tls_modules; in __init_static_tls() local186 ScopedReadLock locker(&modules.rwlock); in __init_static_tls()188 for (size_t i = 0; i < modules.module_count; ++i) { in __init_static_tls()189 TlsModule& module = modules.module_table[i]; in __init_static_tls()228 const TlsModules& modules = __libc_shared_globals()->tls_modules; in update_tls_dtv() local234 if (__get_tcb_dtv(tcb)->generation == atomic_load(&modules.generation)) { in update_tls_dtv()245 if (modules.module_count > old_cnt) { in update_tls_dtv()262 if (i < modules.module_count) { in update_tls_dtv()263 const TlsModule& mod = modules.module_table[i]; in update_tls_dtv()265 dtv->modules[i] = static_tls + mod.static_offset; in update_tls_dtv()[all …]
59 TlsModules& modules = __libc_shared_globals()->tls_modules; in __libc_register_thread_exit_callback() local61 if (modules.first_thread_exit_callback == nullptr) { in __libc_register_thread_exit_callback()62 modules.first_thread_exit_callback = cb; in __libc_register_thread_exit_callback()70 new_node->prev = modules.thread_exit_callback_tail_node; in __libc_register_thread_exit_callback()71 modules.thread_exit_callback_tail_node = new_node; in __libc_register_thread_exit_callback()131 TlsModules& modules = __libc_shared_globals()->tls_modules; in __libc_iterate_dynamic_tls() local136 for (size_t i = modules.static_module_count; i < dtv->count; ++i) { in __libc_iterate_dynamic_tls()137 void* dtls_begin = dtv->modules[i]; in __libc_iterate_dynamic_tls()
145 TlsModules& modules = __libc_shared_globals()->tls_modules; in layout_static_tls() local154 modules.module_count = 1; in layout_static_tls()155 modules.static_module_count = 1; in layout_static_tls()156 modules.module_table = &mod; in layout_static_tls()161 __libc_tls_generation_copy = modules.generation; in layout_static_tls()
131 TlsModules& modules = __libc_shared_globals()->tls_modules; in linker_finalize_static_tls() local132 modules.static_module_count = modules.module_count; in linker_finalize_static_tls()
408 // assorted modules
183 void* modules[]; member
22 object or executable. At program startup, TLS for all initially-loaded modules comprises the "Static50 The DTV's "generation" field is used to lazily update/reallocate the DTV when new modules are loaded109 `__tls_get_addr` may reallocate the DTV or free blocks for unloaded modules.225 As long as a shared object is one of the initially-loaded modules, a better option is to use272 To support modules loaded with `dlopen`, the loader must use a resolver function that calls301 char* modules[];308 dtv->modules[arg->idx.module] != nullptr) {309 addr = dtv->modules[arg->idx.module] + arg->idx.offset;496 * TLS for dynamically loaded and unloaded modules (`__tls_get_addr`)507 The loader exposes a list of TLS modules ([`struct TlsModules`][TlsModules]) to `libc.so` using the[all …]
204 modules will not be built. Note that `make checkbuild` will not be complete205 either, as `make tests` covers a few additional modules, but generally speaking