Lines Matching defs:table
22 The code lengths are lens[0..codes-1]. The result starts at *table,
26 -1 is an invalid code, and +1 means that ENOUGH isn't enough. table
28 requested root table index bits, and on return it is the actual root
29 table index bits. It will differ if the request is greater than the
33 unsigned codes, code FAR * FAR *table,
38 unsigned root; /* number of index bits for root table */
39 unsigned curr; /* number of index bits for current table */
40 unsigned drop; /* code bits to drop for sub-table */
42 unsigned used; /* code entries in table used */
48 code here; /* table entry for duplication */
49 code FAR *next; /* next available space in table */
50 const unsigned short FAR *base; /* base value table to use */
51 const unsigned short FAR *extra; /* extra bits table to use */
54 unsigned short offs[MAXBITS+1]; /* offsets in table for each length */
89 creating from that a table of starting indices for each length in the
90 sorted table, and then entering the symbols in order in the sorted
91 table. The sorted table is work[], with that space being provided by
97 at length counts to determine sub-table sizes when building the
116 *(*table)++ = here; /* make a table to force an error */
117 *(*table)++ = here;
135 /* generate offsets into symbol table for each length for sorting */
145 Create and fill in decoding tables. In this loop, the table being
150 fill the table with replicated entries.
152 root is the number of index bits for the root table. When len exceeds
155 new sub-table should be started. drop is zero when the root table is
158 When a new sub-table is needed, it is necessary to look ahead in the
159 code lengths to determine what size sub-table is needed. The length
163 used keeps track of how many table entries have been allocated from the
164 provided *table space. It is checked for LENS and DIST tables against
166 the initial root table size constants. See the comments in inftrees.h
196 next = *table; /* current table to fill in */
197 curr = root; /* current table index bits */
199 low = (unsigned)(-1); /* trigger new sub-table when len > root */
200 used = 1U << root; /* use root table entries */
203 /* check available table space */
208 /* process all codes and make table entries */
210 /* create table entry */
228 min = fill; /* save offset to next table */
252 /* create new sub-table if needed */
258 /* increment past last table */
261 /* determine length of next table */
277 /* point entry in root table to sub-table */
279 (*table)[low].op = (unsigned char)curr;
280 (*table)[low].bits = (unsigned char)root;
281 (*table)[low].val = (unsigned short)(next - *table);
285 /* fill in remaining table entry if code is incomplete (guaranteed to have
296 *table += used;