• Home
  • Raw
  • Download

Lines Matching refs:wv

188    WordVec* wv;  in new_WV_of_size()  local
190 wv = wsu->alloc( wsu->cc, sizeof(WordVec) ); in new_WV_of_size()
191 wv->owner = wsu; in new_WV_of_size()
192 wv->words = NULL; in new_WV_of_size()
193 wv->size = sz; in new_WV_of_size()
195 wv->words = wsu->alloc( wsu->cc, (SizeT)sz * sizeof(UWord) ); in new_WV_of_size()
197 return wv; in new_WV_of_size()
200 static void delete_WV ( WordVec* wv ) in delete_WV() argument
202 void (*dealloc)(void*) = wv->owner->dealloc; in delete_WV()
203 if (wv->words) { in delete_WV()
204 dealloc(wv->words); in delete_WV()
206 dealloc(wv); in delete_WV()
208 static void delete_WV_for_FM ( UWord wv ) { in delete_WV_for_FM() argument
209 delete_WV( (WordVec*)wv ); in delete_WV_for_FM()
260 static inline Bool is_dead ( WordSetU* wsu, WordVec* wv ) in is_dead() argument
262 if (wv == NULL) /* last element in free linked list in ix2vec */ in is_dead()
265 return (WordVec**)wv >= &(wsu->ix2vec[1]) in is_dead()
266 && (WordVec**)wv < &(wsu->ix2vec[wsu->ix2vec_size]); in is_dead()
274 WordVec* wv; in do_ix2vec() local
281 wv = wsu->ix2vec[ws]; in do_ix2vec()
283 tl_assert(wv); in do_ix2vec()
284 tl_assert(!is_dead(wsu,wv)); in do_ix2vec()
285 tl_assert(wv->owner == wsu); /* YYY */ in do_ix2vec()
286 return wv; in do_ix2vec()
292 WordVec* wv; in do_ix2vec_with_dead() local
299 wv = wsu->ix2vec[ws]; in do_ix2vec_with_dead()
301 if (is_dead(wsu,wv)) in do_ix2vec_with_dead()
302 wv = NULL; in do_ix2vec_with_dead()
304 tl_assert(wv->owner == wsu); /* YYY */ in do_ix2vec_with_dead()
305 return wv; in do_ix2vec_with_dead()
402 WordVec* wv = do_ix2vec( wsu, ws ); in HG_() local
404 if (wv->size == 0) { in HG_()
415 WordVec* wv; in HG_() local
418 wv = do_ix2vec( wsu, ws ); in HG_()
419 return (Bool)(wv->size == 1 && wv->words[0] == w); in HG_()
424 WordVec* wv; in HG_() local
426 wv = do_ix2vec( wsu, ws ); in HG_()
427 tl_assert(wv->size >= 0); in HG_()
428 return wv->size; in HG_()
433 WordVec* wv; in HG_() local
436 wv = do_ix2vec( wsu, ws ); in HG_()
437 tl_assert(wv->size >= 1); in HG_()
438 return wv->words[0]; in HG_()
450 WordVec* wv; in HG_() local
453 wv = do_ix2vec( wsu, ws ); in HG_()
454 tl_assert(wv->size >= 0); in HG_()
455 *nWords = wv->size; in HG_()
456 *words = wv->words; in HG_()
461 WordVec* wv = do_ix2vec_with_dead( wsu, ws ); in HG_() local
465 if (HG_DEBUG) VG_(printf)("dieWS %s %d %p\n", wsu->cc, (Int)ws, wv); in HG_()
470 if (!wv) in HG_()
481 (UWord)wv ); in HG_()
487 delete_WV( wv ); in HG_()
505 WordVec* wv; in HG_() local
510 wv = do_ix2vec( wsu, ws ); in HG_()
512 if (wv->owner != wsu) return False; in HG_()
513 if (wv->size < 0) return False; in HG_()
514 if (wv->size > 0) { in HG_()
515 for (i = 0; i < wv->size-1; i++) { in HG_()
516 if (wv->words[i] >= wv->words[i+1]) in HG_()
526 WordVec* wv = do_ix2vec( wsu, ws ); in HG_() local
528 for (i = 0; i < wv->size; i++) { in HG_()
529 if (wv->words[i] == w) in HG_()
537 WordVec* wv; in HG_() local
540 wv = new_WV_of_size(wsu, 1); in HG_()
541 wv->words[0] = w1; in HG_()
544 wv = new_WV_of_size(wsu, 2); in HG_()
545 wv->words[0] = w1; in HG_()
546 wv->words[1] = w2; in HG_()
550 wv = new_WV_of_size(wsu, 2); in HG_()
551 wv->words[0] = w2; in HG_()
552 wv->words[1] = w1; in HG_()
554 return add_or_dealloc_WordVec( wsu, wv ); in HG_()
571 WordVec* wv; in HG_() local
573 wv = do_ix2vec( wsu, ws ); in HG_()
575 for (i = 0; i < wv->size; i++) { in HG_()
576 VG_(printf)("%p", (void*)wv->words[i]); in HG_()
577 if (i < wv->size-1) in HG_()
609 WordVec* wv; in HG_() local
617 wv = do_ix2vec( wsu, ws ); in HG_()
618 for (k = 0; k < wv->size; k++) { in HG_()
619 if (wv->words[k] == w) { in HG_()
625 wv_new = new_WV_of_size( wsu, wv->size + 1 ); in HG_()
627 for (; k < wv->size && wv->words[k] < w; k++) { in HG_()
628 wv_new->words[j++] = wv->words[k]; in HG_()
631 for (; k < wv->size; k++) { in HG_()
632 tl_assert(wv->words[k] > w); in HG_()
633 wv_new->words[j++] = wv->words[k]; in HG_()
651 WordVec* wv = do_ix2vec( wsu, ws ); in HG_() local
656 if (wv->size == 0) { in HG_()
665 for (i = 0; i < wv->size; i++) { in HG_()
666 if (wv->words[i] == w) in HG_()
669 if (i == wv->size) { in HG_()
675 tl_assert(i >= 0 && i < wv->size); in HG_()
676 tl_assert(wv->size > 0); in HG_()
678 wv_new = new_WV_of_size( wsu, wv->size - 1 ); in HG_()
680 for (; j < wv->size; j++) { in HG_()
683 wv_new->words[k++] = wv->words[j]; in HG_()
688 if (wv->size == 1) { in HG_()
928 WordVec* wv = do_ix2vec( wsu, ws ); in show_WS() local
930 for (i = 0; i < wv->size; i++) { in show_WS()
931 VG_(printf)("%lu", wv->words[i]); in show_WS()
932 if (i < wv->size-1) in show_WS()