From: Yann Collet Date: Mon, 23 Nov 2015 15:52:22 +0000 (+0100) Subject: more tests (bt modes) X-Git-Tag: zstd-0.4.0^2~23^2~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=225179dd0568cd519e97cfa78d6ebf038954b4f0;p=thirdparty%2Fzstd.git more tests (bt modes) --- diff --git a/lib/zstd_compress.c b/lib/zstd_compress.c index 8c08a8de5..cae9c2471 100644 --- a/lib/zstd_compress.c +++ b/lib/zstd_compress.c @@ -1222,6 +1222,8 @@ static U32 ZSTD_insertBt1_extDict(ZSTD_CCtx* zc, const BYTE* const ip, const U32 { match = dictBase + matchIndex; matchLength += ZSTD_count_2segments(ip+matchLength, match+matchLength, iend, dictEnd, prefixStart); + if (matchIndex+matchLength >= dictLimit) + match = base + matchIndex; /* to prepare for next usage of match[matchLength] */ } if (ip+matchLength == iend) /* equal : no way to know if inf or sup */ @@ -1312,6 +1314,8 @@ size_t ZSTD_insertBtAndFindBestMatch_extDict ( { match = dictBase + matchIndex; matchLength += ZSTD_count_2segments(ip+matchLength, match+matchLength, iend, dictEnd, prefixStart); + if (matchIndex+matchLength >= dictLimit) + match = base + matchIndex; /* to prepare for next usage of match[matchLength] */ } if (matchLength > bestLength) diff --git a/programs/Makefile b/programs/Makefile index fe2d3413e..eddd32583 100644 --- a/programs/Makefile +++ b/programs/Makefile @@ -30,7 +30,7 @@ # fullbench32: Same as fullbench, but forced to compile in 32-bits mode # ########################################################################## -VERSION?= 0.3.6 +VERSION?= 0.4.0 DESTDIR?= PREFIX ?= /usr/local @@ -158,40 +158,52 @@ test-zstd: zstd datagen @diff tmp1 tmp2 ./datagen | ./zstd -6 -v | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - @./datagen -g256MB | md5sum > tmp1 - ./datagen -g256MB | ./zstd -v | ./zstd -d | md5sum > tmp2 + @./datagen -g257MB | md5sum > tmp1 + ./datagen -g257MB | ./zstd -v | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g256MB | ./zstd -v2 | ./zstd -d | md5sum > tmp2 + ./datagen -g257MB | ./zstd -v2 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g256MB | ./zstd -v3 | ./zstd -d | md5sum > tmp2 + ./datagen -g257MB | ./zstd -v3 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - @./datagen -g128MB -P60| md5sum > tmp1 - ./datagen -g128MB -P60 | ./zstd -v4 | ./zstd -d | md5sum > tmp2 + @./datagen -g129MB -P60| md5sum > tmp1 + ./datagen -g129MB -P60 | ./zstd -v4 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g128MB -P60 | ./zstd -v5 | ./zstd -d | md5sum > tmp2 + ./datagen -g129MB -P60 | ./zstd -v5 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g128MB -P60 | ./zstd -v6 | ./zstd -d | md5sum > tmp2 + ./datagen -g129MB -P60 | ./zstd -v6 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - @./datagen -g64MB -P70 | md5sum > tmp1 - ./datagen -g64MB -P70 | ./zstd -v7 | ./zstd -d | md5sum > tmp2 + @./datagen -g65MB -P70 | md5sum > tmp1 + ./datagen -g65MB -P70 | ./zstd -v7 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g64MB -P70 | ./zstd -v8 | ./zstd -d | md5sum > tmp2 + ./datagen -g65MB -P70 | ./zstd -v8 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g64MB -P70 | ./zstd -v9 | ./zstd -d | md5sum > tmp2 + ./datagen -g65MB -P70 | ./zstd -v9 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - @./datagen -g32MB -P75 | md5sum > tmp1 - ./datagen -g32MB -P75 | ./zstd -v10 | ./zstd -d | md5sum > tmp2 + @./datagen -g33MB -P75 | md5sum > tmp1 + ./datagen -g33MB -P75 | ./zstd -v10 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g32MB -P75 | ./zstd -v11 | ./zstd -d | md5sum > tmp2 + ./datagen -g33MB -P75 | ./zstd -v11 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g32MB -P75 | ./zstd -v12 | ./zstd -d | md5sum > tmp2 + ./datagen -g33MB -P75 | ./zstd -v12 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - @./datagen -g16MB -P80 | md5sum > tmp1 - ./datagen -g16MB -P80 | ./zstd -v13 | ./zstd -d | md5sum > tmp2 + @./datagen -g17MB -P80 | md5sum > tmp1 + ./datagen -g17MB -P80 | ./zstd -v13 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g16MB -P80 | ./zstd -v14 | ./zstd -d | md5sum > tmp2 + ./datagen -g17MB -P80 | ./zstd -v14 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 - ./datagen -g16MB -P80 | ./zstd -v15 | ./zstd -d | md5sum > tmp2 + ./datagen -g17MB -P80 | ./zstd -v15 | ./zstd -d | md5sum > tmp2 + @diff tmp1 tmp2 + @./datagen -g9MB -P85 | md5sum > tmp1 + ./datagen -g9MB -P85 | ./zstd -v16 | ./zstd -d | md5sum > tmp2 + @diff tmp1 tmp2 + ./datagen -g9MB -P85 | ./zstd -v17 | ./zstd -d | md5sum > tmp2 + @diff tmp1 tmp2 + ./datagen -g9MB -P85 | ./zstd -v18 | ./zstd -d | md5sum > tmp2 + @diff tmp1 tmp2 + @./datagen -g5MB -P89 | md5sum > tmp1 + ./datagen -g5MB -P89 | ./zstd -v19 | ./zstd -d | md5sum > tmp2 + @diff tmp1 tmp2 + ./datagen -g5MB -P89 | ./zstd -v20 | ./zstd -d | md5sum > tmp2 @diff tmp1 tmp2 ./datagen -g6GB -P99 | md5sum > tmp1 ./datagen -g6GB -P99 | ./zstd -vq | ./zstd -d | md5sum > tmp2