Lines Matching refs:coder
294 lzma_lzma1_decoder *restrict coder = coder_ptr; in lzma_decode() local
302 &coder->rc, in, in_pos, in_size); in lzma_decode()
319 rc_to_local(coder->rc, *in_pos); in lzma_decode()
322 uint32_t state = coder->state; in lzma_decode()
323 uint32_t rep0 = coder->rep0; in lzma_decode()
324 uint32_t rep1 = coder->rep1; in lzma_decode()
325 uint32_t rep2 = coder->rep2; in lzma_decode()
326 uint32_t rep3 = coder->rep3; in lzma_decode()
328 const uint32_t pos_mask = coder->pos_mask; in lzma_decode()
332 probability *probs = coder->probs; in lzma_decode()
333 uint32_t symbol = coder->symbol; in lzma_decode()
334 uint32_t limit = coder->limit; in lzma_decode()
335 uint32_t offset = coder->offset; in lzma_decode()
336 uint32_t len = coder->len; in lzma_decode()
338 const uint32_t literal_pos_mask = coder->literal_pos_mask; in lzma_decode()
339 const uint32_t literal_context_bits = coder->literal_context_bits; in lzma_decode()
348 const bool no_eopm = coder->uncompressed_size in lzma_decode()
350 if (no_eopm && coder->uncompressed_size < dict.limit - dict.pos) in lzma_decode()
351 dict.limit = dict.pos + (size_t)(coder->uncompressed_size); in lzma_decode()
355 switch (coder->sequence) in lzma_decode()
367 rc_if_0(coder->is_match[state][pos_state], SEQ_IS_MATCH) { in lzma_decode()
368 rc_update_0(coder->is_match[state][pos_state]); in lzma_decode()
372 probs = literal_subcoder(coder->literal, in lzma_decode()
486 coder->sequence = SEQ_LITERAL_WRITE; in lzma_decode()
497 rc_update_1(coder->is_match[state][pos_state]); in lzma_decode()
500 rc_if_0(coder->is_rep[state], SEQ_IS_REP) { in lzma_decode()
502 rc_update_0(coder->is_rep[state]); in lzma_decode()
512 len_decode(len, coder->match_len_decoder, in lzma_decode()
517 probs = coder->dist_slot[get_dist_state(len)]; in lzma_decode()
564 probs = coder->pos_special + rep0 in lzma_decode()
636 rc_bit(coder->pos_align[ in lzma_decode()
643 rc_bit(coder->pos_align[symbol], , in lzma_decode()
646 rc_bit(coder->pos_align[symbol], , in lzma_decode()
649 rc_bit(coder->pos_align[symbol], , in lzma_decode()
655 rc_bit_last(coder->pos_align[symbol], , in lzma_decode()
664 if (coder->uncompressed_size in lzma_decode()
687 rc_update_1(coder->is_rep[state]); in lzma_decode()
704 rc_if_0(coder->is_rep0[state], SEQ_IS_REP0) { in lzma_decode()
705 rc_update_0(coder->is_rep0[state]); in lzma_decode()
709 rc_if_0(coder->is_rep0_long[state][pos_state], in lzma_decode()
711 rc_update_0(coder->is_rep0_long[ in lzma_decode()
719 coder->sequence = SEQ_SHORTREP; in lzma_decode()
728 rc_update_1(coder->is_rep0_long[ in lzma_decode()
732 rc_update_1(coder->is_rep0[state]); in lzma_decode()
739 rc_if_0(coder->is_rep1[state], SEQ_IS_REP1) { in lzma_decode()
740 rc_update_0(coder->is_rep1[state]); in lzma_decode()
747 rc_update_1(coder->is_rep1[state]); in lzma_decode()
749 rc_if_0(coder->is_rep2[state], in lzma_decode()
751 rc_update_0(coder->is_rep2[ in lzma_decode()
760 rc_update_1(coder->is_rep2[ in lzma_decode()
775 len_decode(len, coder->rep_len_decoder, in lzma_decode()
791 coder->sequence = SEQ_COPY; in lzma_decode()
797 coder->sequence = SEQ_IS_MATCH; in lzma_decode()
806 rc_from_local(coder->rc, *in_pos); in lzma_decode()
808 coder->state = state; in lzma_decode()
809 coder->rep0 = rep0; in lzma_decode()
810 coder->rep1 = rep1; in lzma_decode()
811 coder->rep2 = rep2; in lzma_decode()
812 coder->rep3 = rep3; in lzma_decode()
814 coder->probs = probs; in lzma_decode()
815 coder->symbol = symbol; in lzma_decode()
816 coder->limit = limit; in lzma_decode()
817 coder->offset = offset; in lzma_decode()
818 coder->len = len; in lzma_decode()
822 if (coder->uncompressed_size != LZMA_VLI_UNKNOWN) { in lzma_decode()
823 coder->uncompressed_size -= dict.pos - dict_start; in lzma_decode()
828 if (coder->uncompressed_size == 0 && ret == LZMA_OK in lzma_decode()
829 && coder->sequence != SEQ_NORMALIZE) in lzma_decode()
830 ret = coder->sequence == SEQ_IS_MATCH in lzma_decode()
837 if (!rc_is_finished(coder->rc)) in lzma_decode()
842 rc_reset(coder->rc); in lzma_decode()
853 lzma_lzma1_decoder *coder = coder_ptr; in lzma_decoder_uncompressed() local
854 coder->uncompressed_size = uncompressed_size; in lzma_decoder_uncompressed()
861 lzma_lzma1_decoder *coder = coder_ptr; in lzma_decoder_reset() local
868 coder->pos_mask = (1U << options->pb) - 1; in lzma_decoder_reset()
871 literal_init(coder->literal, options->lc, options->lp); in lzma_decoder_reset()
873 coder->literal_context_bits = options->lc; in lzma_decoder_reset()
874 coder->literal_pos_mask = (1U << options->lp) - 1; in lzma_decoder_reset()
877 coder->state = STATE_LIT_LIT; in lzma_decoder_reset()
878 coder->rep0 = 0; in lzma_decoder_reset()
879 coder->rep1 = 0; in lzma_decoder_reset()
880 coder->rep2 = 0; in lzma_decoder_reset()
881 coder->rep3 = 0; in lzma_decoder_reset()
882 coder->pos_mask = (1U << options->pb) - 1; in lzma_decoder_reset()
885 rc_reset(coder->rc); in lzma_decoder_reset()
889 for (uint32_t j = 0; j <= coder->pos_mask; ++j) { in lzma_decoder_reset()
890 bit_reset(coder->is_match[i][j]); in lzma_decoder_reset()
891 bit_reset(coder->is_rep0_long[i][j]); in lzma_decoder_reset()
894 bit_reset(coder->is_rep[i]); in lzma_decoder_reset()
895 bit_reset(coder->is_rep0[i]); in lzma_decoder_reset()
896 bit_reset(coder->is_rep1[i]); in lzma_decoder_reset()
897 bit_reset(coder->is_rep2[i]); in lzma_decoder_reset()
901 bittree_reset(coder->dist_slot[i], DIST_SLOT_BITS); in lzma_decoder_reset()
904 bit_reset(coder->pos_special[i]); in lzma_decoder_reset()
906 bittree_reset(coder->pos_align, ALIGN_BITS); in lzma_decoder_reset()
910 bit_reset(coder->match_len_decoder.choice); in lzma_decoder_reset()
911 bit_reset(coder->match_len_decoder.choice2); in lzma_decoder_reset()
912 bit_reset(coder->rep_len_decoder.choice); in lzma_decoder_reset()
913 bit_reset(coder->rep_len_decoder.choice2); in lzma_decoder_reset()
916 bittree_reset(coder->match_len_decoder.low[pos_state], in lzma_decoder_reset()
918 bittree_reset(coder->match_len_decoder.mid[pos_state], in lzma_decoder_reset()
921 bittree_reset(coder->rep_len_decoder.low[pos_state], in lzma_decoder_reset()
923 bittree_reset(coder->rep_len_decoder.mid[pos_state], in lzma_decoder_reset()
927 bittree_reset(coder->match_len_decoder.high, LEN_HIGH_BITS); in lzma_decoder_reset()
928 bittree_reset(coder->rep_len_decoder.high, LEN_HIGH_BITS); in lzma_decoder_reset()
930 coder->sequence = SEQ_IS_MATCH; in lzma_decoder_reset()
931 coder->probs = NULL; in lzma_decoder_reset()
932 coder->symbol = 0; in lzma_decoder_reset()
933 coder->limit = 0; in lzma_decoder_reset()
934 coder->offset = 0; in lzma_decoder_reset()
935 coder->len = 0; in lzma_decoder_reset()
945 if (lz->coder == NULL) { in lzma_lzma_decoder_create()
946 lz->coder = lzma_alloc(sizeof(lzma_lzma1_decoder), allocator); in lzma_lzma_decoder_create()
947 if (lz->coder == NULL) in lzma_lzma_decoder_create()
979 lzma_decoder_reset(lz->coder, options); in lzma_decoder_init()
980 lzma_decoder_uncompressed(lz->coder, LZMA_VLI_UNKNOWN); in lzma_decoder_init()