Searched refs:tcb (Results 1 – 6 of 6) sorted by relevance
226 static void update_tls_dtv(bionic_tcb* tcb) { in update_tls_dtv() argument233 if (__get_tcb_dtv(tcb)->generation == atomic_load(&modules.generation)) { in update_tls_dtv()237 const size_t old_cnt = __get_tcb_dtv(tcb)->count; in update_tls_dtv()246 TlsDtv* const old_dtv = __get_tcb_dtv(tcb); in update_tls_dtv()251 __set_tcb_dtv(tcb, new_dtv); in update_tls_dtv()254 TlsDtv* const dtv = __get_tcb_dtv(tcb); in update_tls_dtv()257 char* static_tls = reinterpret_cast<char*>(tcb) - layout.offset_bionic_tcb(); in update_tls_dtv()281 bionic_tcb* tcb = __get_bionic_tcb(); in tls_get_addr_slow_path() local288 update_tls_dtv(tcb); in tls_get_addr_slow_path()290 TlsDtv* dtv = __get_tcb_dtv(tcb); in tls_get_addr_slow_path()[all …]
171 __LIBC_HIDDEN__ void __init_tcb(bionic_tcb* tcb, pthread_internal_t* thread);172 __LIBC_HIDDEN__ void __init_tcb_stack_guard(bionic_tcb* tcb);173 __LIBC_HIDDEN__ void __init_tcb_dtv(bionic_tcb* tcb);174 __LIBC_HIDDEN__ void __init_bionic_tls_ptrs(bionic_tcb* tcb, bionic_tls* tls);201 static inline __always_inline TlsDtv* __get_tcb_dtv(bionic_tcb* tcb) { in __get_tcb_dtv() argument202 uintptr_t dtv_slot = reinterpret_cast<uintptr_t>(tcb->tls_slot(TLS_SLOT_DTV)); in __get_tcb_dtv()206 static inline void __set_tcb_dtv(bionic_tcb* tcb, TlsDtv* val) { in __set_tcb_dtv() argument207 tcb->tls_slot(TLS_SLOT_DTV) = &val->generation; in __set_tcb_dtv()
58 void __init_tcb_stack_guard(bionic_tcb* tcb) { in __init_tcb_stack_guard() argument60 tcb->tls_slot(TLS_SLOT_STACK_GUARD) = reinterpret_cast<void*>(__stack_chk_guard); in __init_tcb_stack_guard()63 void __init_bionic_tls_ptrs(bionic_tcb* tcb, bionic_tls* tls) { in __init_bionic_tls_ptrs() argument64 tcb->thread()->bionic_tls = tls; in __init_bionic_tls_ptrs()65 tcb->tls_slot(TLS_SLOT_BIONIC_TLS) = tls; in __init_bionic_tls_ptrs()287 auto tcb = reinterpret_cast<bionic_tcb*>(mapping.static_tls + layout.offset_bionic_tcb()); in __allocate_thread() local292 __init_tcb(tcb, thread); in __allocate_thread()293 __init_tcb_dtv(tcb); in __allocate_thread()294 __init_tcb_stack_guard(tcb); in __allocate_thread()295 __init_bionic_tls_ptrs(tcb, tls); in __allocate_thread()[all …]
88 void __init_tcb(bionic_tcb* tcb, pthread_internal_t* thread) { in __init_tcb() argument92 tcb->tls_slot(TLS_SLOT_SELF) = &tcb->tls_slot(TLS_SLOT_SELF); in __init_tcb()94 tcb->tls_slot(TLS_SLOT_THREAD_ID) = thread; in __init_tcb()97 void __init_tcb_dtv(bionic_tcb* tcb) { in __init_tcb_dtv() argument101 __set_tcb_dtv(tcb, const_cast<TlsDtv*>(&zero_dtv)); in __init_tcb_dtv()
177 void __free_dynamic_tls(bionic_tcb* tcb);
747 Add an lld option: `--android-tls[-tcb=SIZE]`