line |
true |
false |
branch |
50
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
|
0 |
0 |
if (litlen >= (int)RUN_MASK) |
63
|
0 |
0 |
if (mlen >= (int)(ML_MASK+MINMATCH)) |
|
0 |
0 |
if (mlen >= (int)(ML_MASK+MINMATCH)) |
|
0 |
0 |
if (mlen >= (int)(ML_MASK+MINMATCH)) |
91
|
0 |
0 |
if (matchLength <= minLen) return match; |
|
0 |
0 |
if (matchLength <= minLen) return match; |
|
0 |
0 |
if (matchLength <= minLen) return match; |
125
|
0 |
0 |
if (limit == limitedDestSize) oend -= LASTLITERALS; /* Hack for support LZ4 format restriction */ |
126
|
0 |
0 |
if (sufficient_len >= LZ4_OPT_NUM) sufficient_len = LZ4_OPT_NUM-1; |
130
|
0 |
0 |
while (ip < mflimit) { |
136
|
0 |
0 |
if (firstMatch.len==0) { ip++; continue; } |
138
|
0 |
0 |
if ((size_t)firstMatch.len > sufficient_len) { |
143
|
0 |
0 |
if ( LZ4HC_encodeSequence(&ip, &op, &anchor, firstML, matchPos, limit, oend) ) /* updates ip, op and anchor */ |
150
|
0 |
0 |
for (rPos = 0 ; rPos < MINMATCH ; rPos++) { |
164
|
0 |
0 |
for ( ; mlen <= matchML ; mlen++) { |
175
|
0 |
0 |
for (addLit = 1; addLit <= TRAILING_LITERALS; addLit ++) { |
185
|
0 |
0 |
for (cur = 1; cur < last_match_pos; cur++) { |
189
|
0 |
0 |
if (curPtr >= mflimit) break; |
192
|
0 |
0 |
if (fullUpdate) { |
194
|
0 |
0 |
if ( (opt[cur+1].price <= opt[cur].price) |
196
|
0 |
0 |
&& (opt[cur+MINMATCH].price < opt[cur].price + 3/*min seq price*/) ) |
200
|
0 |
0 |
if (opt[cur+1].price <= opt[cur].price) continue; |
204
|
0 |
0 |
if (fullUpdate) |
209
|
0 |
0 |
if (!newMatch.len) continue; |
211
|
0 |
0 |
if ( ((size_t)newMatch.len > sufficient_len) |
212
|
0 |
0 |
|| (newMatch.len + cur >= LZ4_OPT_NUM) ) { |
223
|
0 |
0 |
for (litlen = 1; litlen < MINMATCH; litlen++) { |
226
|
0 |
0 |
if (price < opt[pos].price) { |
240
|
0 |
0 |
for ( ; ml <= matchML ; ml++) { |
247
|
0 |
0 |
if (opt[cur].mlen == 1) { |
249
|
0 |
0 |
price = ((cur > ll) ? opt[cur - ll].price : 0) |
256
|
0 |
0 |
if (pos > last_match_pos+TRAILING_LITERALS || price <= opt[pos].price) { |
|
0 |
0 |
if (pos > last_match_pos+TRAILING_LITERALS || price <= opt[pos].price) { |
260
|
0 |
0 |
if ( (ml == matchML) /* last pos of last match */ |
261
|
0 |
0 |
&& (last_match_pos < pos) ) |
270
|
0 |
0 |
for (addLit = 1; addLit <= TRAILING_LITERALS; addLit ++) { |
299
|
0 |
0 |
if (next_matchLength > candidate_pos) break; /* last match elected, first match to encode */ |
306
|
0 |
0 |
while (rPos < last_match_pos) { |
309
|
0 |
0 |
if (ml == 1) { ip++; rPos++; continue; } /* literal; note: can end up with several literals, in which case, skip them */ |
314
|
0 |
0 |
if ( LZ4HC_encodeSequence(&ip, &op, &anchor, ml, ip - offset, limit, oend) ) /* updates ip, op and anchor */ |
324
|
0 |
0 |
if (limit == limitedDestSize) oend += LASTLITERALS; /* restore correct value */ |
325
|
0 |
0 |
if (limit && (op + totalSize > oend)) { |
|
0 |
0 |
if (limit && (op + totalSize > oend)) { |
326
|
0 |
0 |
if (limit == limitedOutput) return 0; /* Check output limit */ |
334
|
0 |
0 |
if (lastRunSize >= RUN_MASK) { |
337
|
0 |
0 |
for(; accumulator >= 255 ; accumulator -= 255) *op++ = 255; |
351
|
0 |
0 |
if (limit == limitedDestSize) { |