X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/mLib/blobdiff_plain/0bd984429304da7c1c5509103e3dc04149028a95..5feb52afba684ae49cc96f66fd62fc190c251b92:/sub.c diff --git a/sub.c b/sub.c index b0d1895..57ee194 100644 --- a/sub.c +++ b/sub.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: sub.c,v 1.3 1999/05/06 19:51:35 mdw Exp $ + * $Id: sub.c,v 1.5 1999/05/19 20:27:11 mdw Exp $ * * Allocation of known-size blocks * @@ -30,6 +30,12 @@ /*----- Revision history --------------------------------------------------* * * $Log: sub.c,v $ + * Revision 1.5 1999/05/19 20:27:11 mdw + * Change naming to match newer mLib conventions. + * + * Revision 1.4 1999/05/13 22:48:55 mdw + * Change `-ise' to `-ize' throughout. + * * Revision 1.3 1999/05/06 19:51:35 mdw * Reformatted the LGPL notice a little bit. * @@ -44,7 +50,7 @@ /*----- The big idea ------------------------------------------------------* * * This file provides an extra layer over @malloc@. It provides fast - * turnover for small blocks, and tries to minimise the per-block overhead. + * turnover for small blocks, and tries to minimize the per-block overhead. * * To do its job, @alloc@ must place an extra restriction on you: you must * know the size of a block when you free it. Usually you'll have this @@ -131,8 +137,8 @@ /*----- Static variables --------------------------------------------------*/ -static void *sub__bins[SUB_BINS]; -static size_t sub__sizes[SUB_BINS]; +static void *bins[SUB_BINS]; +static size_t sizes[SUB_BINS]; /*----- Main code ---------------------------------------------------------*/ @@ -158,11 +164,11 @@ void *sub_alloc(size_t s) /* --- If the bin is empty, find some memory --- */ - if (!sub__bins[bin]) { + if (!bins[bin]) { char *p, *q; - p = xmalloc(sub__sizes[bin]); - q = p + sub__sizes[bin]; + p = xmalloc(sizes[bin]); + q = p + sizes[bin]; s = SUB_BINSZ(bin); @@ -174,13 +180,13 @@ void *sub_alloc(size_t s) *(void **)q = q + s; } - sub__bins[bin] = p; + bins[bin] = p; } /* --- Extract the first block in the list --- */ - p = sub__bins[bin]; - sub__bins[bin] = *(void **)p; + p = bins[bin]; + bins[bin] = *(void **)p; return (p); } @@ -201,8 +207,8 @@ void sub_free(void *p, size_t s) if (bin >= SUB_BINS) free(p); else { - *(void **)p = sub__bins[bin]; - sub__bins[bin] = p; + *(void **)p = bins[bin]; + bins[bin] = p; } } @@ -212,17 +218,17 @@ void sub_free(void *p, size_t s) * * Returns: --- * - * Use: Initialises the magic allocator. + * Use: Initializes the magic allocator. */ void sub_init(void) { int i; - /* --- Initialise the sizes bins --- */ + /* --- Initialize the sizes bins --- */ for (i = 1; i < SUB_BINS; i++) { - sub__sizes[i] = ((SUB_CHUNK + SUB_BINSZ(i) - 1) / + sizes[i] = ((SUB_CHUNK + SUB_BINSZ(i) - 1) / SUB_BINSZ(i) * SUB_BINSZ(i)); } }