Lines Matching refs:bits
219 static inline void bitstream_cursor_advance(struct bitstream_cursor *cur, unsigned int bits) in bitstream_cursor_advance() argument
221 bits += cur->bit; in bitstream_cursor_advance()
222 cur->b = cur->b + (bits >> 3); in bitstream_cursor_advance()
223 cur->bit = bits & 7; in bitstream_cursor_advance()
260 static inline int bitstream_put_bits(struct bitstream *bs, u64 val, const unsigned int bits) in bitstream_put_bits() argument
265 if (bits == 0) in bitstream_put_bits()
268 if ((bs->cur.b + ((bs->cur.bit + bits -1) >> 3)) - bs->buf >= bs->buf_len) in bitstream_put_bits()
272 if (bits < 64) in bitstream_put_bits()
273 val &= ~0ULL >> (64 - bits); in bitstream_put_bits()
277 for (tmp = 8 - bs->cur.bit; tmp < bits; tmp += 8) in bitstream_put_bits()
280 bitstream_cursor_advance(&bs->cur, bits); in bitstream_put_bits()
281 return bits; in bitstream_put_bits()
293 static inline int bitstream_get_bits(struct bitstream *bs, u64 *out, int bits) in bitstream_get_bits() argument
298 if (bits > 64) in bitstream_get_bits()
301 if (bs->cur.b + ((bs->cur.bit + bs->pad_bits + bits -1) >> 3) - bs->buf >= bs->buf_len) in bitstream_get_bits()
302 bits = ((bs->buf_len - (bs->cur.b - bs->buf)) << 3) in bitstream_get_bits()
305 if (bits == 0) { in bitstream_get_bits()
312 n = (bs->cur.bit + bits + 7) >> 3; in bitstream_get_bits()
324 val &= ~0ULL >> (64 - bits); in bitstream_get_bits()
326 bitstream_cursor_advance(&bs->cur, bits); in bitstream_get_bits()
329 return bits; in bitstream_get_bits()
343 int bits = __vli_encode_bits(&code, in); in vli_encode_bits() local
345 if (bits <= 0) in vli_encode_bits()
346 return bits; in vli_encode_bits()
348 return bitstream_put_bits(bs, code, bits); in vli_encode_bits()