Home | History | Annotate | Download | only in coregrind

Lines Matching refs:nd

139 static UWord size_avl_nonNull ( AvlNode* nd )
141 return 1 + (nd->child[0] ? size_avl_nonNull(nd->child[0]) : 0)
142 + (nd->child[1] ? size_avl_nonNull(nd->child[1]) : 0);
502 AvlNode* avl_dopy ( AvlNode* nd,
509 if (! nd)
514 nyu->child[0] = nd->child[0];
515 nyu->child[1] = nd->child[1];
516 nyu->balance = nd->balance;
520 nyu->key = dopyK( nd->key );
521 if (nd->key != 0 && nyu->key == 0)
525 nyu->key = nd->key;
530 nyu->val = dopyV( nd->val );
531 if (nd->val != 0 && nyu->val == 0)
535 nyu->val = nd->val;
590 static void avl_free ( AvlNode* nd,
595 if (!nd)
597 if (nd->child[0])
598 avl_free(nd->child[0], kFin, vFin, dealloc);
599 if (nd->child[1])
600 avl_free(nd->child[1], kFin, vFin, dealloc);
602 kFin( nd->key );
604 vFin( nd->val );
605 VG_(memset)(nd, 0, sizeof(AvlNode));
606 dealloc(nd);
898 static UWord sizeTotalBag_wrk ( AvlNode* nd )
900 /* unchecked pre: nd is non-NULL */
901 UWord w = nd->val;
903 if (nd->child[0])
904 w += sizeTotalBag_wrk(nd->child[0]);
905 if (nd->child[1])
906 w += sizeTotalBag_wrk(nd->child[1]);
942 AvlNode* nd;
945 nd = bag->fm->root;
946 tl_assert(nd);
947 tl_assert(!nd->child[0]);
948 tl_assert(!nd->child[1]);
949 return nd->val == 1;
956 AvlNode* nd = bag->fm->root;
957 tl_assert(nd); /* if this fails, 'bag' is empty - caller is in error. */
958 tl_assert(nd->val >= 1);
959 return nd->key;