Lines Matching refs:tab
40 hashfree(register Hash_table_t* tab) in hashfree() argument
53 if (!tab) return(0); in hashfree()
54 if (tab->table) in hashfree()
58 if (tab->root->local->free) in hashfree()
60 if (tab->root->flags & HASH_BUCKET) freebucket = tab->root->local->free; in hashfree()
61 else freevalue = tab->root->local->free; in hashfree()
63 if (region = tab->root->local->region) in hashfree()
64 handle = tab->root->local->handle; in hashfree()
65 sx = &tab->table[tab->size]; in hashfree()
66 sp = &tab->table[0]; in hashfree()
94 if ((tab->flags & (HASH_RESIZE|HASH_STATIC)) != HASH_STATIC) in hashfree()
96 if (region) (*region)(handle, tab->table, 0, 0); in hashfree()
97 else free(tab->table); in hashfree()
101 if (tab->root) in hashfree()
109 if ((tp = tab->root->references) != tab) in hashfree()
112 if (tp->next == tab) in hashfree()
114 tp->next = tab->next; in hashfree()
118 else if (!(tab->root->references = tp->next)) in hashfree()
120 if ((rp = hash_info.list) != tab->root) in hashfree()
123 if (rp->next == tab->root) in hashfree()
125 rp->next = tab->root->next; in hashfree()
132 if (!(tab->root->references)) in hashfree()
134 if (tab->root->local) in hashfree()
135 free(tab->root->local); in hashfree()
136 if (region) (*region)(handle, tab->root, 0, 0); in hashfree()
137 else free(tab->root); in hashfree()
140 if (tp = tab->scope) tp->frozen--; in hashfree()
141 if (region) (*region)(handle, tab, 0, 0); in hashfree()
142 else free(tab); in hashfree()