small adaptations for intermediate level 11
This commit is contained in:
parent
4b81885800
commit
e06cb03c11
@ -644,7 +644,7 @@ static int LZ4HC_getSearchNum(int compressionLevel)
|
|||||||
{
|
{
|
||||||
switch (compressionLevel) {
|
switch (compressionLevel) {
|
||||||
default: return 0; /* unused */
|
default: return 0; /* unused */
|
||||||
case 11: return 128;
|
case 11: return 256;
|
||||||
case 12: return 1<<13;
|
case 12: return 1<<13;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
11
lib/lz4opt.h
11
lib/lz4opt.h
@ -301,8 +301,8 @@ static int LZ4HC_compress_optimal (
|
|||||||
mlen, cost, mlen);
|
mlen, cost, mlen);
|
||||||
} } }
|
} } }
|
||||||
last_match_pos = matches[nb_matches_initial-1].len;
|
last_match_pos = matches[nb_matches_initial-1].len;
|
||||||
opt[last_match_pos-2].toSearch = 1;
|
if (fullUpdate) opt[last_match_pos-2].toSearch = 1; /* 1 byte on calgary */
|
||||||
opt[last_match_pos-1].toSearch = 1;
|
if (fullUpdate) opt[last_match_pos-1].toSearch = 1; /* 1 byte on calgary */
|
||||||
opt[last_match_pos].toSearch = 1;
|
opt[last_match_pos].toSearch = 1;
|
||||||
{ int addLit;
|
{ int addLit;
|
||||||
for (addLit = 1; addLit <= 3; addLit ++) {
|
for (addLit = 1; addLit <= 3; addLit ++) {
|
||||||
@ -349,7 +349,6 @@ static int LZ4HC_compress_optimal (
|
|||||||
opt[pos].off = 0;
|
opt[pos].off = 0;
|
||||||
opt[pos].litlen = baseLitlen+litlen;
|
opt[pos].litlen = baseLitlen+litlen;
|
||||||
opt[pos].price = price;
|
opt[pos].price = price;
|
||||||
opt[pos].toSearch = 1;
|
|
||||||
DEBUGLOG(7, "rPos:%3i => price:%3i (litlen=%i)",
|
DEBUGLOG(7, "rPos:%3i => price:%3i (litlen=%i)",
|
||||||
pos, price, opt[pos].litlen);
|
pos, price, opt[pos].litlen);
|
||||||
} } }
|
} } }
|
||||||
@ -392,8 +391,8 @@ static int LZ4HC_compress_optimal (
|
|||||||
opt[pos].toSearch = (((ml-18) % 255) == 0);
|
opt[pos].toSearch = (((ml-18) % 255) == 0);
|
||||||
} } } }
|
} } } }
|
||||||
/* complete following positions with literals */
|
/* complete following positions with literals */
|
||||||
opt[last_match_pos-2].toSearch = 1;
|
if (fullUpdate) opt[last_match_pos-2].toSearch = 1; /* 2 bytes on enwik7 */
|
||||||
opt[last_match_pos-1].toSearch = 1;
|
if (fullUpdate) opt[last_match_pos-1].toSearch = 1; /* 53 bytes on enwik7, 13 bytes on calgary */
|
||||||
opt[last_match_pos].toSearch = 1;
|
opt[last_match_pos].toSearch = 1;
|
||||||
{ int addLit;
|
{ int addLit;
|
||||||
for (addLit = 1; addLit <= 3; addLit ++) {
|
for (addLit = 1; addLit <= 3; addLit ++) {
|
||||||
@ -439,7 +438,7 @@ encode: /* cur, last_match_pos, best_mlen, best_off must be set */
|
|||||||
if (ml == 1) { ip++; rPos++; continue; } /* literal; note: can end up with several literals, in which case, skip them */
|
if (ml == 1) { ip++; rPos++; continue; } /* literal; note: can end up with several literals, in which case, skip them */
|
||||||
rPos += ml;
|
rPos += ml;
|
||||||
assert(ml >= MINMATCH);
|
assert(ml >= MINMATCH);
|
||||||
assert((offset >= 1) && (offset <=65535));
|
assert((offset >= 1) && (offset <= MAX_DISTANCE));
|
||||||
if ( LZ4HC_encodeSequence(&ip, &op, &anchor, ml, ip - offset, limit, oend) ) /* updates ip, op and anchor */
|
if ( LZ4HC_encodeSequence(&ip, &op, &anchor, ml, ip - offset, limit, oend) ) /* updates ip, op and anchor */
|
||||||
return 0; /* error */
|
return 0; /* error */
|
||||||
} }
|
} }
|
||||||
|
Loading…
Reference in New Issue
Block a user