Home | History | Annotate | Download | only in libFLAC

Lines Matching full:lsbits

547 	const unsigned lsbits = 1 + parameter;
563 if(bw->bits && bw->bits + msbits + lsbits <= FLAC__BITS_PER_WORD) { /* i.e. if the whole thing fits in the current bwword */
565 bw->bits = bw->bits + msbits + lsbits;
568 /* NOT: bw->accum <<= msbits + lsbits because msbits+lsbits could be 32, then the shift would be a NOP */
570 bw->accum <<= lsbits;
584 if(bw->bits && bw->bits + msbits + lsbits < FLAC__BITS_PER_WORD) { /* i.e. if the whole thing fits in the current bwword */
586 bw->bits = bw->bits + msbits + lsbits;
589 bw->accum <<= msbits + lsbits;
594 /* slightly pessimistic size check but faster than "<= bw->words + (bw->bits+msbits+lsbits+FLAC__BITS_PER_WORD-1)/FLAC__BITS_PER_WORD" */
596 if(bw->capacity <= bw->words + bw->bits + msbits + 1/*lsbits always fit in 1 bwword*/ && !bitwriter_grow_(bw, msbits+lsbits))
631 if(lsbits < left) {
632 bw->accum <<= lsbits;
634 bw->bits += lsbits;
638 * be > lsbits (because of previous assertions) so it would have
639 * triggered the (lsbits<left) case above.
644 bw->accum |= uval >> (bw->bits = lsbits - left);