Lines Matching defs:done
155 /* The array for tracking visited states, done[], is itself indexed identically
170 vectors grow to total 5.5 MB, in addition to the 4.3 MB done array itself.
228 size_t size; // number of elements in num and done
233 struct tab *done; // states already evaluated array
236 // Index function for num[] and done[].
245 if (g.done != NULL) {
247 if (g.done[n].len)
248 free(g.done[n].vec);
250 free(g.done); g.done = NULL;
269 // see if we've done this one already
319 size_t length = g.done[index].len;
320 if (offset < length && (g.done[index].vec[offset] & bit) != 0)
321 return 1; // done this!
333 vector = realloc(g.done[index].vec, length);
335 memset(vector + g.done[index].len, 0, length - g.done[index].len);
348 g.done[index].len = length;
349 g.done[index].vec = vector;
353 g.done[index].vec[offset] |= bit;
478 // done
502 g.done = NULL;
578 // allocate and clear done array for been_here()
580 g.done = NULL;
582 g.done = calloc(g.size, sizeof(struct tab));
583 assert(g.done != NULL && "out of memory");
594 // done