Lines Matching refs:eb

23   const uint8_t * const data = Mb_ptr_to_current_pos( &fe->eb.mb );  in FLZe_longest_match_len()
24 int32_t * ptr0 = fe->eb.mb.pos_array + fe->eb.mb.cyclic_pos; in FLZe_longest_match_len()
25 const int pos1 = fe->eb.mb.pos + 1; in FLZe_longest_match_len()
27 const int available = min( Mb_available_bytes( &fe->eb.mb ), max_match_len ); in FLZe_longest_match_len()
30 fe->key4 = ( ( fe->key4 << 4 ) ^ data[3] ) & fe->eb.mb.key4_mask; in FLZe_longest_match_len()
31 newpos1 = fe->eb.mb.prev_positions[fe->key4]; in FLZe_longest_match_len()
32 fe->eb.mb.prev_positions[fe->key4] = pos1; in FLZe_longest_match_len()
39 ( delta = pos1 - newpos1 ) > fe->eb.mb.dictionary_size ) in FLZe_longest_match_len()
41 newptr = fe->eb.mb.pos_array + in FLZe_longest_match_len()
42 ( fe->eb.mb.cyclic_pos - delta + in FLZe_longest_match_len()
43 ( ( fe->eb.mb.cyclic_pos >= delta ) ? 0 : fe->eb.mb.dictionary_size + 1 ) ); in FLZe_longest_match_len()
65 State * const state = &fe->eb.state; in FLZe_encode_member()
67 if( fe->eb.member_finished ) return true; in FLZe_encode_member()
68 if( Re_member_position( &fe->eb.renc ) >= fe->eb.member_size_limit ) in FLZe_encode_member()
69 { LZeb_try_full_flush( &fe->eb ); return true; } in FLZe_encode_member()
71 if( Mb_data_position( &fe->eb.mb ) == 0 && in FLZe_encode_member()
72 !Mb_data_finished( &fe->eb.mb ) ) /* encode first byte */ in FLZe_encode_member()
76 if( !Mb_enough_available_bytes( &fe->eb.mb ) || in FLZe_encode_member()
77 !Re_enough_free_bytes( &fe->eb.renc ) ) return true; in FLZe_encode_member()
78 cur_byte = Mb_peek( &fe->eb.mb, 0 ); in FLZe_encode_member()
79 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_match[*state][0], 0 ); in FLZe_encode_member()
80 LZeb_encode_literal( &fe->eb, prev_byte, cur_byte ); in FLZe_encode_member()
81 CRC32_update_byte( &fe->eb.crc, cur_byte ); in FLZe_encode_member()
86 while( !Mb_data_finished( &fe->eb.mb ) && in FLZe_encode_member()
87 Re_member_position( &fe->eb.renc ) < fe->eb.member_size_limit ) in FLZe_encode_member()
92 if( !Mb_enough_available_bytes( &fe->eb.mb ) || in FLZe_encode_member()
93 !Re_enough_free_bytes( &fe->eb.renc ) ) return true; in FLZe_encode_member()
95 pos_state = Mb_data_position( &fe->eb.mb ) & pos_state_mask; in FLZe_encode_member()
99 const int tlen = Mb_true_match_len( &fe->eb.mb, 0, fe->eb.reps[i] + 1 ); in FLZe_encode_member()
104 CRC32_update_buf( &fe->eb.crc, Mb_ptr_to_current_pos( &fe->eb.mb ), len ); in FLZe_encode_member()
105 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_match[*state][pos_state], 1 ); in FLZe_encode_member()
106 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep[*state], 1 ); in FLZe_encode_member()
107 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep0[*state], rep != 0 ); in FLZe_encode_member()
109 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_len[*state][pos_state], 1 ); in FLZe_encode_member()
113 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep1[*state], rep > 1 ); in FLZe_encode_member()
115 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep2[*state], rep > 2 ); in FLZe_encode_member()
116 distance = fe->eb.reps[rep]; in FLZe_encode_member()
117 for( i = rep; i > 0; --i ) fe->eb.reps[i] = fe->eb.reps[i-1]; in FLZe_encode_member()
118 fe->eb.reps[0] = distance; in FLZe_encode_member()
121 Re_encode_len( &fe->eb.renc, &fe->eb.rep_len_model, len, pos_state ); in FLZe_encode_member()
122 if( !Mb_move_pos( &fe->eb.mb ) ) return false; in FLZe_encode_member()
129 CRC32_update_buf( &fe->eb.crc, Mb_ptr_to_current_pos( &fe->eb.mb ), main_len ); in FLZe_encode_member()
130 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_match[*state][pos_state], 1 ); in FLZe_encode_member()
131 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep[*state], 0 ); in FLZe_encode_member()
133 for( i = num_rep_distances - 1; i > 0; --i ) fe->eb.reps[i] = fe->eb.reps[i-1]; in FLZe_encode_member()
134 fe->eb.reps[0] = match_distance; in FLZe_encode_member()
135 LZeb_encode_pair( &fe->eb, match_distance, main_len, pos_state ); in FLZe_encode_member()
136 if( !Mb_move_pos( &fe->eb.mb ) ) return false; in FLZe_encode_member()
142 const uint8_t prev_byte = Mb_peek( &fe->eb.mb, 1 ); in FLZe_encode_member()
143 const uint8_t cur_byte = Mb_peek( &fe->eb.mb, 0 ); in FLZe_encode_member()
144 const uint8_t match_byte = Mb_peek( &fe->eb.mb, fe->eb.reps[0] + 1 ); in FLZe_encode_member()
145 if( !Mb_move_pos( &fe->eb.mb ) ) return false; in FLZe_encode_member()
146 CRC32_update_byte( &fe->eb.crc, cur_byte ); in FLZe_encode_member()
150 const int short_rep_price = price1( fe->eb.bm_match[*state][pos_state] ) + in FLZe_encode_member()
151 price1( fe->eb.bm_rep[*state] ) + in FLZe_encode_member()
152 price0( fe->eb.bm_rep0[*state] ) + in FLZe_encode_member()
153 price0( fe->eb.bm_len[*state][pos_state] ); in FLZe_encode_member()
154 int price = price0( fe->eb.bm_match[*state][pos_state] ); in FLZe_encode_member()
156 price += LZeb_price_literal( &fe->eb, prev_byte, cur_byte ); in FLZe_encode_member()
158 price += LZeb_price_matched( &fe->eb, prev_byte, cur_byte, match_byte ); in FLZe_encode_member()
161 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_match[*state][pos_state], 1 ); in FLZe_encode_member()
162 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep[*state], 1 ); in FLZe_encode_member()
163 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_rep0[*state], 0 ); in FLZe_encode_member()
164 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_len[*state][pos_state], 0 ); in FLZe_encode_member()
171 Re_encode_bit( &fe->eb.renc, &fe->eb.bm_match[*state][pos_state], 0 ); in FLZe_encode_member()
173 LZeb_encode_literal( &fe->eb, prev_byte, cur_byte ); in FLZe_encode_member()
175 LZeb_encode_matched( &fe->eb, prev_byte, cur_byte, match_byte ); in FLZe_encode_member()
180 LZeb_try_full_flush( &fe->eb ); in FLZe_encode_member()