{
size_t sampleSize, sampleStart;
size_t cSize, dSize, dSupSize;
- U32 sampleSizeLog, buffNb;
+ U32 sampleSizeLog, buffNb, cLevelMod;
U64 crcOrig, crcDest;
int cLevel;
sampleStart = FUZ_rand(&lseed) % (srcBufferSize - sampleSize);
crcOrig = XXH64(srcBuffer + sampleStart, sampleSize, 0);
- /* compression test */
- /* covered by HC cLevel 1
- cSize = ZSTD_compressCCtx(ctx, cBuffer, cBufferSize, srcBuffer + sampleStart, sampleSize);
- CHECK(ZSTD_isError(cSize), "ZSTD_compress failed"); */
-
/* HC compression test */
- cLevel = (FUZ_rand(&lseed) & 3) +1;
+#define MAX(a,b) ((a)>(b)?(a):(b))
+ cLevelMod = MAX(1, 38 - (int)(MAX(9, sampleSizeLog) * 2)); /* use high compression levels with small samples, for speed */
+ cLevel = (FUZ_rand(&lseed) % cLevelMod) +1;
cSize = ZSTD_HC_compressCCtx(hcctx, cBuffer, cBufferSize, srcBuffer + sampleStart, sampleSize, cLevel);
CHECK(ZSTD_isError(cSize), "ZSTD_HC_compressCCtx failed");