Lines Matching refs:lzma

261 	 * including lzma.pos_mask are in the first 128 bytes on x86-32,
270 struct lzma_dec lzma;
607 uint32_t low = prev_byte >> (8 - s->lzma.lc);
608 uint32_t high = (s->dict.pos & s->lzma.literal_pos_mask) << s->lzma.lc;
609 return s->lzma.literal[low + high];
624 if (lzma_state_is_literal(s->lzma.state)) {
628 match_byte = dict_get(&s->dict, s->lzma.rep0) << 1;
647 lzma_state_literal(&s->lzma.state);
650 /* Decode the length of the match into s->lzma.len. */
660 s->lzma.len = MATCH_LEN_MIN;
665 s->lzma.len = MATCH_LEN_MIN + LEN_LOW_SYMBOLS;
669 s->lzma.len = MATCH_LEN_MIN + LEN_LOW_SYMBOLS
674 s->lzma.len += rc_bittree(&s->rc, probs, limit) - limit;
677 /* Decode a match. The distance will be stored in s->lzma.rep0. */
684 lzma_state_match(&s->lzma.state);
686 s->lzma.rep3 = s->lzma.rep2;
687 s->lzma.rep2 = s->lzma.rep1;
688 s->lzma.rep1 = s->lzma.rep0;
690 lzma_len(s, &s->lzma.match_len_dec, pos_state);
692 probs = s->lzma.dist_slot[lzma_get_dist_state(s->lzma.len)];
696 s->lzma.rep0 = dist_slot;
699 s->lzma.rep0 = 2 + (dist_slot & 1);
702 s->lzma.rep0 <<= limit;
703 probs = s->lzma.dist_special + s->lzma.rep0
706 &s->lzma.rep0, limit);
708 rc_direct(&s->rc, &s->lzma.rep0, limit - ALIGN_BITS);
709 s->lzma.rep0 <<= ALIGN_BITS;
710 rc_bittree_reverse(&s->rc, s->lzma.dist_align,
711 &s->lzma.rep0, ALIGN_BITS);
718 * seen matches. The distance will be stored in s->lzma.rep0.
724 if (!rc_bit(&s->rc, &s->lzma.is_rep0[s->lzma.state])) {
725 if (!rc_bit(&s->rc, &s->lzma.is_rep0_long[
726 s->lzma.state][pos_state])) {
727 lzma_state_short_rep(&s->lzma.state);
728 s->lzma.len = 1;
732 if (!rc_bit(&s->rc, &s->lzma.is_rep1[s->lzma.state])) {
733 tmp = s->lzma.rep1;
735 if (!rc_bit(&s->rc, &s->lzma.is_rep2[s->lzma.state])) {
736 tmp = s->lzma.rep2;
738 tmp = s->lzma.rep3;
739 s->lzma.rep3 = s->lzma.rep2;
742 s->lzma.rep2 = s->lzma.rep1;
745 s->lzma.rep1 = s->lzma.rep0;
746 s->lzma.rep0 = tmp;
749 lzma_state_long_rep(&s->lzma.state);
750 lzma_len(s, &s->lzma.rep_len_dec, pos_state);
762 if (dict_has_space(&s->dict) && s->lzma.len > 0)
763 dict_repeat(&s->dict, &s->lzma.len, s->lzma.rep0);
770 pos_state = s->dict.pos & s->lzma.pos_mask;
772 if (!rc_bit(&s->rc, &s->lzma.is_match[
773 s->lzma.state][pos_state])) {
776 if (rc_bit(&s->rc, &s->lzma.is_rep[s->lzma.state]))
781 if (!dict_repeat(&s->dict, &s->lzma.len, s->lzma.rep0))
804 s->lzma.state = STATE_LIT_LIT;
805 s->lzma.rep0 = 0;
806 s->lzma.rep1 = 0;
807 s->lzma.rep2 = 0;
808 s->lzma.rep3 = 0;
809 s->lzma.len = 0;
820 probs = s->lzma.is_match[0];
837 s->lzma.pos_mask = 0;
840 ++s->lzma.pos_mask;
843 s->lzma.pos_mask = (1 << s->lzma.pos_mask) - 1;
845 s->lzma.literal_pos_mask = 0;
848 ++s->lzma.literal_pos_mask;
851 s->lzma.lc = props;
853 if (s->lzma.lc + s->lzma.literal_pos_mask > 4)
856 s->lzma.literal_pos_mask = (1 << s->lzma.literal_pos_mask) - 1;
1112 if (s->lzma2.compressed > 0 || s->lzma.len > 0
1276 if (s->lzma2.compressed > 0 || s->lzma.len > 0