Commit Graph

32 Commits

Author SHA1 Message Date
Yann Collet
52646e8d75 first proposal for LZ4_USER_MEMORY_FUNCTIONS
makes it possible to replace at link time
malloc, calloc and free
by user-provided functions
which must be named LZ4_malloc(), LZ4_calloc() and LZ4_free().

answer #937
2020-11-08 21:17:32 -08:00
Yann Collet
27959b43ec LZ4F_decompress requires a valid dctx state
This is now explicitly documented and asserted.
fix #927
2020-11-06 20:46:35 -08:00
Yann Collet
211d653ff8 re-enable alignment test on all targets 2020-11-06 16:43:14 -08:00
Yann Collet
78433070ab document LZ4_ALIGN_TEST 2020-11-06 14:48:43 -08:00
Yann Collet
5243173b23 added documentation about LZ4_FORCE_SW_BITCOUNT
Also : added memory-frugal software byte count for big endian 64-bit cpus.
Disabled by default.
2020-08-25 22:17:29 -07:00
Yann Collet
3dd34df751 added target lz4-wlib
variant of lz4 linking to liblz4 dynamic library

requires the dynamic library to expose static-only symbols (experimental API)

Example for #888
2020-08-11 14:07:51 -07:00
Yann Collet
6654c2cd3b ensure conformance with custom LZ4_DISTANCE_MAX
It's now possible to select a custom LZ4_DISTANCE_MAX at compile time,
provided it's <= 65535.

However, in some cases (when compressing in byU16 mode),
the new distance wasn't respected,
as it used to implied that it was necessarily within range.

Added a distance check for this case.
Also : added a new TravisCI test which ensures that
custom LZ4_DISTANCE_MAX compiles correctly
and compresses correctly (relying on `assert()` to find outsized offsets).
2019-07-15 12:11:34 -07:00
Dmitry V. Levin
10726d4c56 test-amalgamation: use a single cat command
Use the list of prerequisites instead of listing those files manually,
this way they will never fall out of sync.

Also update the amalgamation example to use a single cat command.

Fixes: a7e8d394 ("[amalgamation] add test")
Fixes: b192c86b ("[amalgamation] lz4frame.c")
2019-04-23 21:18:11 +00:00
Yann Collet
21ff1a839a updated doc to underline difference between block and frame
as this is a very frequent source of confusion for new users.
2019-04-12 11:27:44 -07:00
Yann Collet
8d76c8a44a introduce LZ4_DISTANCE_MAX build macro
make it possible to generate LZ4-compressed block
with a controlled maximum offset (necessarily <= 65535).

This could be useful for compatibility with decoders
using a very limited memory budget (<64 KB).

Answer #154
2019-04-11 14:15:33 -07:00
Yann Collet
7a39fb8fb6 make _fast*() decoder generate a deprecation warning
updated modification
2019-04-04 12:47:36 -07:00
Yann Collet
2589c4424f created LZ4_FAST_DEC_LOOP build macro 2019-04-02 16:22:11 -07:00
Yann Collet
6689dae33b
Merge pull request #610 from antinucleon/bootcamp
[amalgamation] lz4frame.c
2018-11-26 12:14:27 -08:00
Bing Xu
b192c86ba4 [amalgamation] lz4frame.c 2018-11-26 11:30:15 -08:00
Vincent Torri
e057e94215 update lib/README.md 2018-11-18 21:03:27 +01:00
Vincent Torri
d966844a95 Add documentation about DLLTOOL variable 2018-11-18 13:22:10 +01:00
Yann Collet
e8b08f9fbd updated build doc 2018-09-13 16:14:00 -07:00
Yann Collet
550b40849f merge lz4opt.h into lz4hc.c
Having a dedicated file for optimal parser
made sense during its creation,
it allowed Przemyslaw to work more freely on lz4opt, with less dependency on lz4hc,
moreover, the optimal parser was more complex, with its own search functions.

Since the optimal was rewritten last year, it's now a lot lighter.
It makes more sense now to integrate it directly inside lz4hc.c,
making it easier to edit (editors are a bit "lost" inside a `*.h` dependent on its #include position),
it also reduces the number of files in the project,
which fits pretty well with lz4 objectives.
(adding lz4hc requires "just" lz4hc.h and lz4hc.c).
2018-02-25 00:32:09 -08:00
Yann Collet
bdca63ed69 early out is not better 2017-10-09 00:36:47 -07:00
Yann Collet
1ad9a36cfb updated lib/README
clarifications, improved wording
2017-09-06 11:22:45 -07:00
Przemyslaw Skibinski
65a542579b updated README.md 2016-11-22 11:14:11 +01:00
Przemyslaw Skibinski
2e10aab20f MinGW doesn't require the import library at all 2016-11-16 08:59:18 +01:00
Przemyslaw Skibinski
f71340ce1d DLL dependencies moved to lib/dll/ 2016-11-15 11:06:16 +01:00
Przemyslaw Skibinski
ec6fb477b2 added visual\README.md 2016-11-11 08:57:46 +01:00
Nick Terrell
5b37837e6e Fix license and remove references to zstd 2016-11-10 17:27:56 -08:00
Przemyslaw Skibinski
52251d9709 Using MinGW+MSYS to create DLL 2016-11-10 18:30:59 +01:00
Przemyslaw Skibinski
72a4a84df7 udated README.md 2016-11-10 17:49:42 +01:00
Przemyslaw Skibinski
88cef262ec documentation moved to doc/ 2016-11-03 13:25:20 +01:00
Yann Collet
67500142c1 Clarified license (#115, #244) 2016-11-01 19:14:04 -07:00
Yann Collet
0cc38f9ebc Updated lib readme 2015-06-27 14:15:45 -08:00
Yann Collet
b17d3220d2 Minor lib readme update 2015-06-18 06:38:19 -08:00
Yann Collet
8edb7f1406 Added : Readme into lib directory, to explain what does each file 2015-03-16 21:48:40 +01:00