Lines Matching defs:litSize

81 static void ZSTD_allocateLiteralsBuffer(ZSTD_DCtx* dctx, void* const dst, const size_t dstCapacity, const size_t litSize,
85 assert(litSize <= blockSizeMax);
88 if (streaming == not_streaming && dstCapacity > blockSizeMax + WILDCOPY_OVERLENGTH + litSize + WILDCOPY_OVERLENGTH) {
95 dctx->litBufferEnd = dctx->litBuffer + litSize;
97 } else if (litSize <= ZSTD_LITBUFFEREXTRASIZE) {
102 dctx->litBufferEnd = dctx->litBuffer + litSize;
115 dctx->litBuffer = (BYTE*)dst + expectedWriteSize - litSize + ZSTD_LITBUFFEREXTRASIZE - WILDCOPY_OVERLENGTH;
116 dctx->litBufferEnd = dctx->litBuffer + litSize - ZSTD_LITBUFFEREXTRASIZE;
119 dctx->litBuffer = (BYTE*)dst + expectedWriteSize - litSize;
155 { size_t lhSize, litSize, litCSize;
170 litSize = (lhc >> 4) & 0x3FF;
176 litSize = (lhc >> 4) & 0x3FFF;
182 litSize = (lhc >> 4) & 0x3FFFF;
186 RETURN_ERROR_IF(litSize > 0 && dst == NULL, dstSize_tooSmall, "NULL not handled");
187 RETURN_ERROR_IF(litSize > blockSizeMax, corruption_detected, "");
189 RETURN_ERROR_IF(litSize < MIN_LITERALS_FOR_4_STREAMS, literals_headerWrong,
191 litSize, MIN_LITERALS_FOR_4_STREAMS);
193 RETURN_ERROR_IF(expectedWriteSize < litSize , dstSize_tooSmall, "");
194 ZSTD_allocateLiteralsBuffer(dctx, dst, dstCapacity, litSize, streaming, expectedWriteSize, 0);
197 if (dctx->ddictIsCold && (litSize > 768 /* heuristic */)) {
204 dctx->litBuffer, litSize, istart+lhSize, litCSize,
207 assert(litSize >= MIN_LITERALS_FOR_4_STREAMS);
209 dctx->litBuffer, litSize, istart+lhSize, litCSize,
216 dctx->entropy.hufTable, dctx->litBuffer, litSize,
221 dctx->entropy.hufTable, dctx->litBuffer, litSize,
227 dctx->entropy.hufTable, dctx->litBuffer, litSize,
234 assert(litSize > ZSTD_LITBUFFEREXTRASIZE);
236 ZSTD_memmove(dctx->litBuffer + ZSTD_LITBUFFEREXTRASIZE - WILDCOPY_OVERLENGTH, dctx->litBuffer, litSize - ZSTD_LITBUFFEREXTRASIZE);
245 dctx->litSize = litSize;
252 { size_t litSize, lhSize;
259 litSize = istart[0] >> 3;
263 litSize = MEM_readLE16(istart) >> 4;
268 litSize = MEM_readLE24(istart) >> 4;
272 RETURN_ERROR_IF(litSize > 0 && dst == NULL, dstSize_tooSmall, "NULL not handled");
273 RETURN_ERROR_IF(litSize > blockSizeMax, corruption_detected, "");
274 RETURN_ERROR_IF(expectedWriteSize < litSize, dstSize_tooSmall, "");
275 ZSTD_allocateLiteralsBuffer(dctx, dst, dstCapacity, litSize, streaming, expectedWriteSize, 1);
276 if (lhSize+litSize+WILDCOPY_OVERLENGTH > srcSize) { /* risk reading beyond src buffer with wildcopy */
277 RETURN_ERROR_IF(litSize+lhSize > srcSize, corruption_detected, "");
280 ZSTD_memcpy(dctx->litBuffer, istart + lhSize, litSize - ZSTD_LITBUFFEREXTRASIZE);
281 ZSTD_memcpy(dctx->litExtraBuffer, istart + lhSize + litSize - ZSTD_LITBUFFEREXTRASIZE, ZSTD_LITBUFFEREXTRASIZE);
285 ZSTD_memcpy(dctx->litBuffer, istart + lhSize, litSize);
288 dctx->litSize = litSize;
289 return lhSize+litSize;
293 dctx->litSize = litSize;
294 dctx->litBufferEnd = dctx->litPtr + litSize;
296 return lhSize+litSize;
301 size_t litSize, lhSize;
307 litSize = istart[0] >> 3;
312 litSize = MEM_readLE16(istart) >> 4;
317 litSize = MEM_readLE24(istart) >> 4;
320 RETURN_ERROR_IF(litSize > 0 && dst == NULL, dstSize_tooSmall, "NULL not handled");
321 RETURN_ERROR_IF(litSize > blockSizeMax, corruption_detected, "");
322 RETURN_ERROR_IF(expectedWriteSize < litSize, dstSize_tooSmall, "");
323 ZSTD_allocateLiteralsBuffer(dctx, dst, dstCapacity, litSize, streaming, expectedWriteSize, 1);
326 ZSTD_memset(dctx->litBuffer, istart[lhSize], litSize - ZSTD_LITBUFFEREXTRASIZE);
331 ZSTD_memset(dctx->litBuffer, istart[lhSize], litSize);
334 dctx->litSize = litSize;
1627 const BYTE* const litEnd = litPtr + dctx->litSize;
2086 DEBUGLOG(5, "ZSTD_decodeLiteralsBlock : cSize=%u, nbLiterals=%zu", (U32)litCSize, dctx->litSize);