summaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* frame-api: add method to insert uncomressed dataAlexander Mohr2022-06-096-72/+214
| | | | | | | | new method `uncompressed_update` allows to insert blocks without compression into the lz4 stream. The usage is documented in the frameCompress example Signed-off-by: Alexander Mohr <alexander.m.mohr@mercedes-benz.com>
* introduced FORWARD_IF_ERROR()Yann Collet2022-05-101-48/+49
| | | | | | and removed prefix from RETURN_ERROR(_IF) to improve brevity as it's just a local macro (no bleeding in user's namespace).
* introduced macro LZ4F_RETURN_ERROR_IFYann Collet2022-05-071-32/+23
|
* introduced macro LZ4F_RETURN_ERRORYann Collet2022-05-071-37/+39
|
* removed ERROR_GENERIC from lz4frame.hYann Collet2022-05-072-3/+4
| | | | created a new error code in the process : LZ4F_ERROR_compressionState_uninitialized
* update library version to v1.9.4Yann Collet2022-04-171-1/+1
| | | | to reduce confusion in traces between dev branch and latest v1.9.3 release.
* updated one error codeYann Collet2022-04-061-1/+1
|
* updated documentation around `liblz4` granularityYann Collet2022-03-211-6/+26
|
* add file operation and examplesanjiahao2022-03-102-0/+404
| | | | | | operate lz4 compressed files as a general files Signed-off-by: anjiahao <anjiahao@xiaomi.com>
* added target test-compile-with-lz4-memory-usageYann Collet2022-01-312-4/+7
| | | | and run it in GA CI
* Introduce MIN and MAX bounds to LZ4_MEMORY_USAGEYann Collet2022-01-313-6/+16
| | | | | | | ensure that `frametest` works fine with these values, notably with low LZ4_MEMORY_USAGE (dict test notably) following suggestions from @t-mat at #1016
* minor comments improvements to lz4frameYann Collet2022-01-311-4/+4
|
* Merge pull request #1057 from lz4/lz4_unalignYann Collet2022-01-291-6/+6
|\ | | | | renamed unaligned -> LZ4_unaligned
| * renamed unaligned -> LZ4_unalignedYann Collet2022-01-291-6/+6
| | | | | | | | | | better name space isolation suggested by @boris-kolpackov in #1053
* | fixed bug in optimal parserYann Collet2022-01-291-19/+17
|/ | | | discovered by @yoniko.
* Add commentsBen Niu2022-01-271-0/+5
|
* Disable _tzcnt_u64 for ARM64ECBen Niu2022-01-271-1/+1
| | | The ARM64EC is a new Microsoft-designed ARM64 ABI that is compatible with AMD64 code. However, not all AMD64 intrinsic functions are supported. For, intrinsics that are lowered to AVX, AVX2 and AVX512 instructions are not supported, including the _tzcnt_u64. To make sure this file compiles for ARM64EC, the use of _tzcnt_u64 should be neutered.
* Fix typos found by codespellDimitri Papadopoulos2021-11-255-6/+6
|
* Enable fast decoding on Apple/AArch64 buildsArseny Kapoulkine2021-11-221-3/+5
| | | | | | | | | | | This makes decoding significantly faster on M1; measured on compressed source code across 8 hardware threads, decompressing 294 MB to 1301 MB takes 513 ms of cumulative work (2.53 GB/s) before, and 406 ms (3.2 GB/s) after this change on M1 Pro. There's no way to check if the target architecture is M1 specifically but the gains are likely to be similar on recent iterations on Apple processors, and the original performance issue was probably more specific to Qualcomm.
* trim excess whitespacea13460542021-08-211-1/+1
|
* fix clang-cl _tzcnt_u64 not defined issueZeyi (Rice) Fan2021-08-091-0/+6
|
* Don't reuse state memory that's too small.Eddy Jansson2021-07-311-1/+13
| | | | | | | Ensure that the memory block we're trying to reuse is large enough for the new state. Fixes #974
* Define LZ4_STREAMSIZE in terms of LZ4_MEMORY_USAGEEddy Jansson2021-07-311-1/+1
| | | | | | This is required to correctly size a static member to hold the hash table, whose size is derived from LZ4_MEMORY_USAGE.
* Merge pull request #1012 from eloj/print-install-dirsYann Collet2021-07-241-2/+2
|\ | | | | Print target directories during 'make install'.
| * Print target directories during 'make install'.Eddy Jansson2021-07-241-2/+2
| | | | | | | | This takes #975 to its logical conclusion.
* | Expand use of pkg-config variables.Eddy Jansson2021-07-242-2/+3
|/ | | | | | | | | Change pkg-config generation such that the path variables, not their values, are used in the definitions of Libs and Cflags, and that $prefix is substituted into libdir and includedir iff they start with its value. This makes it easier to modify the already installed file if necessary.
* fix LZ4HC_HEAPMODE macro guardTotalJustice2021-06-251-3/+3
|
* Cast ALLOC return value to satisfy C++Gabe Jones2021-06-151-1/+1
|
* fix NULL ptr arithmetic at lz4:2299Yann Collet2021-05-281-2/+7
|
* fix NULL ptr arithmetic in lz4:1680Yann Collet2021-05-281-3/+6
| | | | only do arithmetic if offset > 0
* fix UB lz4:988 and lz4:1178Yann Collet2021-05-282-28/+40
| | | | | ensure `dictBase` is only used when there is an actual dictionary content.
* fix NULL ptr arithmetic of lz4:1572Yann Collet2021-05-281-5/+5
| | | | was blindly adding an offset (0) to `dictionary` which could be `NULL`.
* fix UB of lz4frame:907Yann Collet2021-05-282-59/+66
| | | | | | now line 912 by ensuring pointer arithmetic is only performed if there is a reason for an internal buffer to be used.
* Merge pull request #972 from jasperla/memmove_crashYann Collet2021-04-301-1/+1
|\ | | | | Fix potential memory corruption with negative memmove() size
| * Fix potential memory corruption with negative memmove() sizeJasper Lievisse Adriaanse2021-02-261-1/+1
| |
* | fix null pointer dereferenceklebertosantos2021-03-101-1/+3
|/
* Merge pull request #964 from sigiesec/fix-ubsan-resetStreamHC_fastYann Collet2021-01-191-1/+5
|\ | | | | Don't trigger UBSan warning in LZ4_resetStreamHC_fast if LZ4_streamHC…
| * Don't trigger UBSan warning in LZ4_resetStreamHC_fast if ↵Simon Giesecke2021-01-071-1/+5
| | | | | | | | LZ4_streamHCPtr->internal_donotuse.end is NULL.
* | fix some typos (work by Andrea Gelmini)Thomas Waldmann2021-01-072-2/+2
|/
* fix minor header dateYann Collet2020-12-012-2/+2
|
* refactor MakefileYann Collet2020-12-011-47/+54
| | | | | remove usage of include Makefile.inc in too Makefile as it seems to somehow unexport CFLAGS ...
* updated license & header datesYann Collet2020-11-259-9/+9
|
* update docYann Collet2020-11-151-1/+1
|
* fix minor win32 warningYann Collet2020-11-151-1/+2
|
* better visual conformanceYann Collet2020-11-151-4/+3
| | | | | | only include <intrin.h> on vs2005+ (#947) remove some useless #pragma fix a few minor Visual warnings
* Merge branch 'dev' of github.com:Cyan4973/lz4 into devYann Collet2020-11-141-2/+3
|\
| * minor refactor of lz4ioYann Collet2020-11-131-2/+3
| | | | | | | | | | for readability. Mostly around --list capability
* | restrict BitScanForward() to VS2005+Yann Collet2020-11-141-1/+1
|/ | | | suggested by @aqrit in #947
* minor : lz4frame include stdlib only if neededYann Collet2020-11-101-1/+1
|
* changed LZ4_calloc() to a 2-arguments signatureYann Collet2020-11-091-2/+2
| | | | | | to remain similar to stdlib's calloc(). Updated test to use c++ compiler for stricter signature check.