Lines Matching refs:dtv
366 dtv_t *dtv; in allocate_dtv() local
375 dtv = calloc (dtv_length + 2, sizeof (dtv_t)); in allocate_dtv()
376 if (dtv != NULL) in allocate_dtv()
379 dtv[0].counter = dtv_length; in allocate_dtv()
385 INSTALL_DTV (result, dtv); in allocate_dtv()
484 _dl_resize_dtv (dtv_t *dtv, size_t max_modid) in _dl_resize_dtv() argument
489 size_t oldsize = dtv[-1].counter; in _dl_resize_dtv()
491 if (dtv == GL(dl_initial_dtv)) in _dl_resize_dtv()
501 memcpy (newp, &dtv[-1], (2 + oldsize) * sizeof (dtv_t)); in _dl_resize_dtv()
505 newp = realloc (&dtv[-1], in _dl_resize_dtv()
533 dtv_t *dtv = GET_DTV (result); in _dl_allocate_tls_init() local
542 if (dtv[-1].counter < GL(dl_tls_max_dtv_idx)) in _dl_allocate_tls_init()
545 dtv = _dl_resize_dtv (dtv, GL(dl_tls_max_dtv_idx)); in _dl_allocate_tls_init()
548 INSTALL_DTV (result, &dtv[-1]); in _dl_allocate_tls_init()
578 dtv[map->l_tls_modid].pointer.val = TLS_DTV_UNALLOCATED; in _dl_allocate_tls_init()
579 dtv[map->l_tls_modid].pointer.to_free = NULL; in _dl_allocate_tls_init()
598 dtv[map->l_tls_modid].pointer.val = dest; in _dl_allocate_tls_init()
623 dtv[0].counter = maxgen; in _dl_allocate_tls_init()
642 dtv_t *dtv = GET_DTV (tcb); in rtld_hidden_def() local
645 for (size_t cnt = 0; cnt < dtv[-1].counter; ++cnt) in rtld_hidden_def()
646 free (dtv[1 + cnt].pointer.to_free); in rtld_hidden_def()
649 if (dtv != GL(dl_initial_dtv)) in rtld_hidden_def()
650 free (dtv - 1); in rtld_hidden_def()
727 dtv_t *dtv = THREAD_DTV (); in _dl_update_slotinfo() local
753 if (dtv[0].counter < listp->slotinfo[idx].gen) in _dl_update_slotinfo()
799 if (gen <= dtv[0].counter) in _dl_update_slotinfo()
806 if (dtv[-1].counter < modid) in _dl_update_slotinfo()
812 dtv = _dl_resize_dtv (dtv, max_modid); in _dl_update_slotinfo()
814 assert (modid <= dtv[-1].counter); in _dl_update_slotinfo()
818 INSTALL_NEW_DTV (dtv); in _dl_update_slotinfo()
825 free (dtv[modid].pointer.to_free); in _dl_update_slotinfo()
826 dtv[modid].pointer.val = TLS_DTV_UNALLOCATED; in _dl_update_slotinfo()
827 dtv[modid].pointer.to_free = NULL; in _dl_update_slotinfo()
847 dtv[0].counter = new_gen; in _dl_update_slotinfo()
856 tls_get_addr_tail (GET_ADDR_ARGS, dtv_t *dtv, struct link_map *the_map) in tls_get_addr_tail() argument
899 dtv[GET_ADDR_MODULE].pointer.to_free = NULL; in tls_get_addr_tail()
900 dtv[GET_ADDR_MODULE].pointer.val = p; in tls_get_addr_tail()
908 dtv[GET_ADDR_MODULE].pointer = result; in tls_get_addr_tail()
920 dtv_t *dtv = THREAD_DTV (); in update_get_addr() local
922 void *p = dtv[GET_ADDR_MODULE].pointer.val; in update_get_addr()
925 return tls_get_addr_tail (GET_ADDR_PARAM, dtv, the_map); in update_get_addr()
946 dtv_t *dtv = THREAD_DTV (); in rtld_hidden_def() local
953 if (__glibc_unlikely (dtv[0].counter != gen)) in rtld_hidden_def()
956 void *p = dtv[GET_ADDR_MODULE].pointer.val; in rtld_hidden_def()
959 return tls_get_addr_tail (GET_ADDR_PARAM, dtv, NULL); in rtld_hidden_def()
975 dtv_t *dtv = THREAD_DTV (); in _dl_tls_get_addr_soft() local
979 if (__glibc_unlikely (dtv[0].counter != gen)) in _dl_tls_get_addr_soft()
984 if (l->l_tls_modid >= dtv[-1].counter) in _dl_tls_get_addr_soft()
999 if (dtv[0].counter < listp->slotinfo[idx].gen) in _dl_tls_get_addr_soft()
1003 void *data = dtv[l->l_tls_modid].pointer.val; in _dl_tls_get_addr_soft()