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 code FAR * FAR *table, unsigned FAR *bits,
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 this; /* 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 */
91 creating from that a table of starting indices for each length in the
92 sorted table, and then entering the symbols in order in the sorted
93 table. The sorted table is work[], with that space being provided by
99 at length counts to determine sub-table sizes when building the
129 /* generate offsets into symbol table for each length for sorting */
139 Create and fill in decoding tables. In this loop, the table being
144 fill the table with replicated entries.
146 root is the number of index bits for the root table. When len exceeds
149 new sub-table should be started. drop is zero when the root table is
152 When a new sub-table is needed, it is necessary to look ahead in the
153 code lengths to determine what size sub-table is needed. The length
157 used keeps track of how many table entries have been allocated from the
158 provided *table space. It is checked for LENS and DIST tables against
160 the initial root table size constants. See the comments in inftree9.h
192 next = *table; /* current table to fill in */
193 curr = root; /* current table index bits */
195 low = (unsigned)(-1); /* trigger new sub-table when len > root */
196 used = 1U << root; /* use root table entries */
199 /* check available table space */
204 /* process all codes and make table entries */
206 /* create table entry */
247 /* create new sub-table if needed */
253 /* increment past last table */
256 /* determine length of next table */
272 /* point entry in root table to sub-table */
274 (*table)[low].op = (unsigned char)curr;
275 (*table)[low].bits = (unsigned char)root;
276 (*table)[low].val = (unsigned short)(next - *table);
281 Fill in rest of table for incomplete codes. This loop is similar to the
282 loop above in incrementing huff for table indices. It is assumed that
284 through high index bits. When the current sub-table is filled, the loop
285 drops back to the root table to fill in any remaining entries there.
291 /* when done with sub-table, drop back to root table */
295 next = *table;
300 /* put invalid code marker in table */
316 *table += used;