Lines Matching +full:runs +full:- +full:on

2  *  LZ4 - Fast LZ compression algorithm
4 * Copyright (C) 2011-2020, Yann Collet.
6 BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php)
26 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32 - LZ4 homepage : http://www.lz4.org
33 - LZ4 source repository : https://github.com/lz4/lz4
54 /* --- Dependency --- */
62 scalable with multi-cores CPU. It features an extremely fast decoder, with speed in
63 multiple GB/s per core, typically reaching RAM speed limits on multi-core systems.
65 The LZ4 compression library provides in-memory compression and decompression functions.
68 - a single step (described as Simple Functions)
69 - a single step, reusing a context (described in Advanced Functions)
70 - unbounded multiple steps (described as Streaming compression)
72 lz4.h generates and decodes LZ4-compressed blocks (doc/lz4_Block_format.md).
74 Exact metadata depends on exact decompression function.
83 Embedding metadata is required for compressed data to be self-contained and portable.
117 * - LZ4_FREESTANDING is a compile-time switch.
118 * - It requires the following macros to be defined:
120 * - It only enables LZ4/HC functions which don't use heap.
122 * - See tests/freestanding.c to check its basic setup.
142 /*------ Version ------*/
144 #define LZ4_VERSION_MINOR 9 /* for new (non-breaking) interface capabilities */
145 #define LZ4_VERSION_RELEASE 5 /* for tweaks, bug-fixes, or development */
158 /*-************************************
167 * Memory usage formula : N->2^N Bytes (examples : 10 -> 1KB; 12 -> 4KB ; 16 -> 64KB; 20 -> 1MB; )
184 /*-************************************
191 * It also runs faster, so it's a recommended setting.
221 /*-************************************
230 …Macro LZ4_COMPRESSBOUND() is also provided for compilation-time evaluation (stack memory allocatio…
241 …It's a trade-off. It can be fine tuned, with each successive value providing roughly +~3% to speed.
252 * and allocate it on 8-bytes boundaries (using `malloc()` typically).
289 * The function stops decoding on reaching this objective.
300 * Note 3 : this function effectively stops decoding on reaching targetOutputSize,
322 /*-*********************************************
330- RC_INVOKED is predefined symbol of rc.exe (the resource compiler which is part of MSVC/Visual St…
331 https://docs.microsoft.com/en-us/windows/win32/menurc/predefined-macros
333 - Since rc.exe is a legacy compiler, it truncates long symbol (> 30 chars)
336 - To eliminate the warning, we surround long preprocessor symbol with
340 #if !defined(RC_INVOKED) /* https://docs.microsoft.com/en-us/windows/win32/menurc/predefined-macros…
353 * However, should the LZ4_stream_t be simply declared on stack (for example),
357 * A same LZ4_stream_t can be re-used multiple times consecutively
375 * The same dictionary will have to be loaded on decompression side for successful decoding.
387 …* If dstCapacity >= LZ4_compressBound(srcSize), compression is guaranteed to succeed, and runs fa…
399 …* Note 3 : When input is structured as a double-buffer, each buffer can have any size, including …
401 * This construction ensures that each block only depends on previous block.
403 * Note 4 : If input buffer is a ring-buffer, it can have any size, including < 64 KB.
419 /*-**********************************************
427 * A tracking context can be re-used multiple times.
429 #if !defined(RC_INVOKED) /* https://docs.microsoft.com/en-us/windows/win32/menurc/predefined-macros…
437 * An LZ4_streamDecode_t context can be allocated once and re-used multiple times.
480 * - Decompression buffer size is _at least_ LZ4_decoderRingBufferSize(maxBlockSize).
484 * - Synchronized mode :
489 * - Decompression buffer is larger than encoding buffer, by a minimum of maxBlockSize more bytes.
535 /*-****************************************************************************
540 * future. They are therefore only safe to depend on when the caller is
572 * (see above comment on LZ4_resetStream_fast() for a definition of "correctly initialized").
583 * Rather than re-loading the dictionary buffer into a working context before
584 * each compression, or copying a pre-loaded dictionary's LZ4_stream_t into a
585 * working LZ4_stream_t, this function introduces a no-copy setup mechanism,
586 * in which the working stream references the dictionary stream in-place.
602 * stream (and source buffer) must remain in-place / accessible / unchanged
603 * through the completion of the first compression call on the stream.
610 /*! In-place compression and decompression
618 * |<------------------------buffer--------------------------------->|
619 * |<-----------compressed data--------->|
620 * |<-----------decompressed size------------------>|
621 * |<----margin---->|
627 * In-place decompression will work inside any buffer
634 * For in-place compression, margin is larger, as it must be able to cope with both
638 * and memory savings offered by in-place compression are more limited.
641 * - Reduce history size, by modifying LZ4_DISTANCE_MAX.
642 * Note that it is a compile-time constant, so all compressions will apply this limit.
645 * - Require the compressor to deliver a "maximum compressed size".
652 * the amount of margin required for in-place compression.
654 * In-place compression can work in any buffer
657 * LZ4_COMPRESS_INPLACE_BUFFER_SIZE() depends on both maxCompressedSize and LZ4_DISTANCE_MAX,
664 #ifndef LZ4_DISTANCE_MAX /* history window size; can be user-defined at compile time */
679 /*-************************************************************
686 #define LZ4_HASHLOG (LZ4_MEMORY_USAGE-2)
720 #define LZ4_STREAM_MINSIZE ((1UL << LZ4_MEMORY_USAGE) + 32) /* static size, for inter-version com…
730 * but it's not when the structure is simply declared on stack (for example).
764 /*-************************************
773 * typically with -Wno-deprecated-declarations for gcc
811 * In order to perform streaming compression, these functions depended on data
832 …* On top of that `LZ4_decompress_fast()` is not protected vs malformed or malicious inputs, makin…