Lines Matching defs:bits
48 /* Bit length codes must not exceed MAX_BL_BITS bits */
54 /* repeat previous bit length 3-6 times (2 bits of repeat count) */
57 /* repeat a zero length 3-10 times (3 bits of repeat count) */
60 /* repeat a zero length 11-138 times (7 bits of repeat count) */
62 local const int extra_lbits[LENGTH_CODES] /* extra bits for each length code */
65 local const int extra_dbits[D_CODES] /* extra bits for each distance code */
68 local const int extra_blbits[BL_CODES]/* extra bits for each bit length code */
95 * 5 bits.)
100 * 3 .. 258, the last 256 values correspond to the top 8 bits of
119 const intf *extra_bits; /* extra bits for each code or NULL */
150 * Reverse the first len bits of a code, using straightforward code (a faster
164 * Flush the bit buffer, keeping at most 7 bits in it.
205 int bits; /* bit index */
211 for (bits = 1; bits <= MAX_BITS; bits++) {
212 code = (code + bl_count[bits - 1]) << 1;
213 next_code[bits] = (ush)code;
225 /* Now reverse the bits */
248 * Send a value on a given number of bits.
249 * IN assertion: length <= 16 and value fits in length bits.
257 /* If not enough room in bi_buf, use (valid) bits from bi_buf and
258 * (16 - bi_valid) bits from value, leaving (width - (16 - bi_valid))
259 * unused bits in value.
298 int bits; /* bit counter */
326 * in two different ways: code 284 + 5 bits or code 285, so we
350 for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0;
547 int bits; /* bit length */
548 int xbits; /* extra bits */
552 for (bits = 0; bits <= MAX_BITS; bits++) s->bl_count[bits] = 0;
561 bits = tree[tree[n].Dad].Len + 1;
562 if (bits > max_length) bits = max_length, overflow++;
563 tree[n].Len = (ush)bits;
568 s->bl_count[bits]++;
572 s->opt_len += (ulg)f * (unsigned)(bits + xbits);
582 bits = max_length - 1;
583 while (s->bl_count[bits] == 0) bits--;
584 s->bl_count[bits]--; /* move one leaf down the tree */
585 s->bl_count[bits + 1] += 2; /* move one overflow item as its brother */
598 for (bits = max_length; bits != 0; bits--) {
599 n = s->bl_count[bits];
603 if ((unsigned) tree[m].Len != (unsigned) bits) {
604 Tracev((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
605 s->opt_len += ((ulg)bits - tree[m].Len) * tree[m].Freq;
606 tree[m].Len = (ush)bits;
658 /* node is 0 or 1 so it does not have extra bits */
808 * lengths of the bit lengths codes and the 5 + 5 + 4 bits for the counts.
876 * Flush the bits in the bit buffer to pending output (leaves at most 7 bits)
884 * This takes 10 bits, of which 7 may remain in the bit buffer.
904 int extra; /* number of extra bits to send */
925 send_bits(s, lc, extra); /* send the extra length bits */
935 send_bits(s, dist, extra); /* send the extra distance bits */
967 * set bits 0..6, 14..25, and 28..31
1076 * and uLong implemented on 32 bits.