From ab3625cffda9be5773472d42db0f8977927ce74f Mon Sep 17 00:00:00 2001 From: Yann Collet Date: Wed, 29 May 2019 16:18:22 -0700 Subject: [PATCH] define CONTROL, to ensure check cannot be disabled assert() can be disabled with NDEBUG --- tests/fullbench.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tests/fullbench.c b/tests/fullbench.c index 3c470315..fcae1f16 100644 --- a/tests/fullbench.c +++ b/tests/fullbench.c @@ -15,7 +15,6 @@ #include "util.h" /* Compiler options, UTIL_GetFileSize */ #include /* malloc */ #include /* fprintf, fopen, ftello64 */ -#include /* assert */ #include "timefn.h" /* UTIL_clockSpanNano, UTIL_getTime */ #include "mem.h" /* U32 */ @@ -61,6 +60,7 @@ static const size_t k_sampleSize_default = 10000000; **************************************/ #define DISPLAY(...) fprintf(stderr, __VA_ARGS__) +#define CONTROL(c) { if (!(c)) { abort(); } } /* like assert(), but cannot be disabled */ /*_************************************ * Benchmark Parameters @@ -450,7 +450,7 @@ static int benchMem(unsigned benchNb, { size_t frameHeaderSize; g_cSize = ZSTD_compress(dstBuff, dstBuffSize, src, srcSize, cLevel); frameHeaderSize = ZSTD_frameHeaderSize(dstBuff, ZSTD_FRAMEHEADERSIZE_PREFIX); - assert(!ZSTD_isError(frameHeaderSize)); + CONTROL(!ZSTD_isError(frameHeaderSize)); /* check block is compressible, hence contains a literals section */ { blockProperties_t bp; ZSTD_getcBlockSize(dstBuff+frameHeaderSize, dstBuffSize, &bp); /* Get 1st block type */ @@ -470,11 +470,11 @@ static int benchMem(unsigned benchNb, const BYTE* ip = dstBuff; const BYTE* iend; { size_t const cSize = ZSTD_compress(dstBuff, dstBuffSize, src, srcSize, cLevel); - assert(cSize > ZSTD_FRAMEHEADERSIZE_PREFIX); + CONTROL(cSize > ZSTD_FRAMEHEADERSIZE_PREFIX); } /* Skip frame Header */ { size_t const frameHeaderSize = ZSTD_frameHeaderSize(dstBuff, ZSTD_FRAMEHEADERSIZE_PREFIX); - assert(!ZSTD_isError(frameHeaderSize)); + CONTROL(!ZSTD_isError(frameHeaderSize)); ip += frameHeaderSize; } /* Find end of block */ @@ -487,7 +487,7 @@ static int benchMem(unsigned benchNb, } ip += ZSTD_blockHeaderSize; /* skip block header */ ZSTD_decompressBegin(g_zdc); - assert(iend > ip); + CONTROL(iend > ip); ip += ZSTD_decodeLiteralsBlock(g_zdc, ip, (size_t)(iend-ip)); /* skip literal segment */ g_cSize = (size_t)(iend-ip); memcpy(dstBuff2, ip, g_cSize); /* copy rest of block (it starts by SeqHeader) */ @@ -524,7 +524,7 @@ static int benchMem(unsigned benchNb, BMK_runTime_t bestResult; bestResult.sumOfReturn = 0; bestResult.nanoSecPerRun = (double)TIMELOOP_NANOSEC * 2000000000; /* hopefully large enough : must be larger than any potential measurement */ - assert(tfs != NULL); + CONTROL(tfs != NULL); bp.benchFn = benchFunction; bp.benchPayload = payload; @@ -751,7 +751,7 @@ int main(int argc, const char** argv) for (argNb=1; argNb