summaryrefslogtreecommitdiffstats
path: root/lib/lz4hc.c
diff options
context:
space:
mode:
authorPrzemyslaw Skibinski <inikep@gmail.com>2016-12-06 18:11:53 (GMT)
committerPrzemyslaw Skibinski <inikep@gmail.com>2016-12-06 18:11:53 (GMT)
commit2113ead176e0032c7ba04aa93f3bcc3d04ba6142 (patch)
tree54e0befc13d46f52c4ebdfe4b203f1cb1c3df73b /lib/lz4hc.c
parentc1ef7a177fae1f5435f191cbdebb0c59fb81d8ff (diff)
downloadlz4-2113ead176e0032c7ba04aa93f3bcc3d04ba6142.zip
lz4-2113ead176e0032c7ba04aa93f3bcc3d04ba6142.tar.gz
lz4-2113ead176e0032c7ba04aa93f3bcc3d04ba6142.tar.bz2
17-bit LZ4HC_MAXD
Diffstat (limited to 'lib/lz4hc.c')
-rw-r--r--lib/lz4hc.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/lz4hc.c b/lib/lz4hc.c
index 57587f3..abdef68 100644
--- a/lib/lz4hc.c
+++ b/lib/lz4hc.c
@@ -84,7 +84,7 @@
* Local Macros
**************************************/
#define HASH_FUNCTION(i) (((i) * 2654435761U) >> ((MINMATCH*8)-LZ4HC_HASH_LOG))
-/* #define DELTANEXTU16(p) chainTable[(p) & LZ4HC_MAXD_MASK] */ /* flexible, LZ4HC_MAXD dependent */
+#define DELTANEXTMAXD(p) chainTable[(p) & LZ4HC_MAXD_MASK] /* flexible, LZ4HC_MAXD dependent */
#define DELTANEXTU16(p) chainTable[(U16)(p)] /* faster */
static U32 LZ4HC_hashPtr(const void* ptr) { return HASH_FUNCTION(LZ4_read32(ptr)); }
@@ -499,14 +499,18 @@ static int LZ4HC_compress_generic (
limitedOutput_directive limit
)
{
+/*
+16#silesia_tar : 211947520 -> 77841782 (2.723), 9.8 MB/s ,1874.4 MB/s
+
+*/
if (compressionLevel < 1) compressionLevel = LZ4HC_DEFAULT_CLEVEL;
if (compressionLevel > 16) {
switch (compressionLevel) {
- case 17: ctx->searchNum = 64; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 0, 64, 0);
- case 18: ctx->searchNum = 256; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 0, 256, 0);
- case 19: ctx->searchNum = 64; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 1, 64, 0);
- case 20:
- default: ctx->searchNum = 256; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 1, 256, 0);
+ case 17: ctx->searchNum = 64; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 0, 64);
+ case 18: ctx->searchNum = 256; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 0, 256);
+ case 19: ctx->searchNum = 64; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 1, 64);
+ default:
+ case 20: ctx->searchNum = 1<<14; return LZ4HC_compress_optimal(ctx, source, dest, inputSize, maxOutputSize, limit, 1, LZ4_OPT_NUM);
}
}