Lines Matching refs:trie

97 static rk_s32 trie_get_node(MppTrieImpl *trie, rk_s32 prev, rk_u64 key)  in trie_get_node()  argument
102 if (trie->node_used >= trie->node_count) { in trie_get_node()
103 rk_s32 old_count = trie->node_count; in trie_get_node()
105 MppTrieNode *new_nodes = mpp_realloc(trie->nodes, MppTrieNode, new_count); in trie_get_node()
116 trie, trie->nodes, trie->node_count, new_nodes, new_count); in trie_get_node()
118 trie->nodes = new_nodes; in trie_get_node()
119 trie->node_count = new_count; in trie_get_node()
122 idx = trie->node_used++; in trie_get_node()
123 node = &trie->nodes[idx]; in trie_get_node()
130 trie->nodes[prev].next_cnt++; in trie_get_node()
229 rk_s32 mpp_trie_init(MppTrie *trie, const char *name) in mpp_trie_init() argument
235 if (!trie || !name) { in mpp_trie_init()
236 mpp_loge_f("invalid trie %p name %p\n", trie, name); in mpp_trie_init()
279 *trie = p; in mpp_trie_init()
283 rk_s32 mpp_trie_init_by_root(MppTrie *trie, void *root) in mpp_trie_init_by_root() argument
289 if (!trie || !root) { in mpp_trie_init_by_root()
290 mpp_loge_f("invalid trie %p root %p\n", trie, root); in mpp_trie_init_by_root()
294 *trie = NULL; in mpp_trie_init_by_root()
336 *trie = p; in mpp_trie_init_by_root()
341 rk_s32 mpp_trie_deinit(MppTrie trie) in mpp_trie_deinit() argument
343 if (trie) { in mpp_trie_deinit()
344 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_deinit()
475 static rk_s32 mpp_trie_check(MppTrie trie, const char *log) in mpp_trie_check() argument
477 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_check()
501 rk_s32 mpp_trie_last_info(MppTrie trie) in mpp_trie_last_info() argument
503 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_last_info()
515 if (!trie) { in mpp_trie_last_info()
522 mpp_trie_add_info(trie, "__name__", p->name, p->name_len); in mpp_trie_last_info()
523 mpp_trie_add_info(trie, "__info__", &pos, sizeof(pos)); in mpp_trie_last_info()
525 mpp_trie_add_info(trie, "__node__", &p->node_used, sizeof(p->node_used)); in mpp_trie_last_info()
534 mpp_trie_dump_f(trie); in mpp_trie_last_info()
587 mpp_trie_dump_f(trie); in mpp_trie_last_info()
590 mpp_trie_check(trie, "shrink merge tag stage"); in mpp_trie_last_info()
644 mpp_trie_dump_f(trie); in mpp_trie_last_info()
647 mpp_trie_check(trie, "shrink move node stage"); in mpp_trie_last_info()
694 rk_s32 mpp_trie_add_info(MppTrie trie, const char *name, void *ctx, rk_u32 ctx_len) in mpp_trie_add_info() argument
696 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_add_info()
769 rk_s32 mpp_trie_get_node_count(MppTrie trie) in mpp_trie_get_node_count() argument
771 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_node_count()
776 rk_s32 mpp_trie_get_info_count(MppTrie trie) in mpp_trie_get_info_count() argument
778 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_info_count()
783 rk_s32 mpp_trie_get_buf_size(MppTrie trie) in mpp_trie_get_buf_size() argument
785 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_buf_size()
790 rk_s32 mpp_trie_get_name_max(MppTrie trie) in mpp_trie_get_name_max() argument
792 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_name_max()
797 void *mpp_trie_get_node_root(MppTrie trie) in mpp_trie_get_node_root() argument
799 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_node_root()
804 MppTrieInfo *mpp_trie_get_info(MppTrie trie, const char *name) in mpp_trie_get_info() argument
806 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_info()
809 if (!trie || !name) { in mpp_trie_get_info()
810 mpp_err_f("invalid trie %p name %p\n", trie, name); in mpp_trie_get_info()
821 MppTrieInfo *mpp_trie_get_info_first(MppTrie trie) in mpp_trie_get_info_first() argument
823 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_info_first()
828 MppTrieInfo *mpp_trie_get_info_next(MppTrie trie, MppTrieInfo *info) in mpp_trie_get_info_next() argument
830 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_get_info_next()
856 void mpp_trie_dump(MppTrie trie, const char *func) in mpp_trie_dump() argument
858 MppTrieImpl *p = (MppTrieImpl *)trie; in mpp_trie_dump()
867 mpp_logi("%s dumping trie %p\n", func, trie); in mpp_trie_dump()
918 void mpp_trie_timing_test(MppTrie trie) in mpp_trie_timing_test() argument
920 MppTrieInfo *root = mpp_trie_get_info_first(trie); in mpp_trie_timing_test()
929 mpp_trie_get_info(trie, mpp_trie_info_name(info)); in mpp_trie_timing_test()
932 info = mpp_trie_get_info_next(trie, info); in mpp_trie_timing_test()