Commit Graph

165 Commits

Author SHA1 Message Date
Takayuki Matsuoka
ae179a9c16 Add note about RC_INVOKED 2022-08-13 05:39:25 +09:00
Takayuki Matsuoka
af0d7c0cb8 Suppress warning from rc.exe
Since rc.exe (the resource compiler) is legacy compiler,  it truncates preprocessor symbol name length to 32 chars.
And it reports the following warning

lz4\build\VS2022\..\..\lib\lz4.h(314): warning RC4011: identifier truncated to 'LZ4_STATIC_LINKING_ONLY_DISABLE'
lz4\build\VS2022\..\..\lib\lz4.h(401): warning RC4011: identifier truncated to 'LZ4_STATIC_LINKING_ONLY_DISABLE'

This patch detects rc.exe and just skips long symbol.
2022-08-12 23:59:34 +09:00
Yann Collet
dee9f95fd9
Merge pull request #1129 from t-mat/disable-memory-alloc-add-doc
Add document for LZ4_STATIC_LINKING_ONLY_DISABLE_MEMORY_ALLOCATION
2022-08-10 10:59:36 -07:00
Takayuki Matsuoka
d0928a7f20 Add short document of LZ4_FREESTANDING to lz4.h 2022-08-11 01:09:53 +09:00
Takayuki Matsuoka
721e76d1af Add LZ4_FREESTANDING 2022-08-07 19:06:37 +09:00
Takayuki Matsuoka
e1276aebe2 Fix: Disable prototypes in header file 2022-08-06 19:46:01 +09:00
Yann Collet
4f4d09a0d1 implement decoder-only benchmark mode
requires an LZ4 Frame as input
2022-07-29 19:22:59 +02:00
Yann Collet
cd96e3e7a5 minor refactor
to prepare bench.c for multiple decoding functions.
2022-07-29 15:24:50 +02:00
Yann Collet
3da483c0e6 Re-organize state's internal to be more compact
produces less padding, notably on OS400
following #1070 by @jonrumsey
2022-07-13 09:57:42 +02:00
Yann Collet
60f8eb6f4c minor : specify min versions for library version identifiers 2022-07-12 22:33:08 +02:00
Yann Collet
d174f975d2 clarify static sizes of states for static allocation 2022-07-12 21:28:12 +02:00
jonrumsey
b4f508608f Change definitions of LZ4_STREAMSIZE, LZ4_STREAMDECODESIZE and LZ4_STREAMHCSIZE to factor in OS400 pointer length and structure alignment rules
Update the length values on platforms where pointers are 16-bytes, factor in implicit compiler padding to ensure proper alignment of members and overall structure lengths
2022-07-11 11:28:32 +01:00
Qi Wang
b1e84b38ef API: add LZ4_decompress_safe_partial_usingDict API
feature request: #1051

Signed-off-by: Qi Wang <wangqi@linux.alibaba.com>
2022-06-07 17:12:19 +08:00
Yann Collet
ce8ee024b2 update library version to v1.9.4
to reduce confusion in traces between dev branch and latest v1.9.3 release.
2022-04-17 10:06:18 -07:00
Yann Collet
4f984e45a5 added target test-compile-with-lz4-memory-usage
and run it in GA CI
2022-01-31 14:51:20 -08:00
Yann Collet
379c1a10ca Introduce MIN and MAX bounds to LZ4_MEMORY_USAGE
ensure that `frametest` works fine with these values,
notably with low LZ4_MEMORY_USAGE (dict test notably)

following suggestions from @t-mat at #1016
2022-01-30 23:02:55 -08:00
Eddy Jansson
80e3e7034e Define LZ4_STREAMSIZE in terms of LZ4_MEMORY_USAGE
This is required to correctly size a static member
to hold the hash table, whose size is derived from
LZ4_MEMORY_USAGE.
2021-07-31 18:59:15 +02:00
Thomas Waldmann
909aae8260 fix some typos (work by Andrea Gelmini) 2021-01-07 18:39:57 +01:00
Yann Collet
50ff8b3ae8 fix minor header date 2020-11-30 18:16:00 -08:00
Yann Collet
be634559e3 update obsolete section documentation
and update manuals.
fix #712
2020-11-08 12:54:59 -08:00
Yann Collet
67e661a2ad static state size
for better inter-version compatibility
2020-11-06 18:26:13 -08:00
Yann Collet
211d653ff8 re-enable alignment test on all targets 2020-11-06 16:43:14 -08:00
Yann Collet
0c56f838ed unified internal state declaration
align on `void*` instead : there is no `long long` inside the structure
2020-11-06 16:15:51 -08:00
Yann Collet
293713a4fa bump version number
to v1.9.3
2020-09-29 14:27:39 -07:00
Yann Collet
dc27b7ae41 comment bug on older versions of ZSTD_compress_destSize()
following investigation in #859
2020-09-17 20:59:01 -07:00
Yann Collet
c5d6f8a8be fix #783
LZ4_decompress_safe_partial()
now also supports a scenario where
nb_bytes_to_generate is <= block_decompressed_size
And
nb_bytes_to_read is >= block_compressed_size.

Previously, the only supported scenario was
nb_bytes_to_read == block_compress_size.

Pay attention that,
if nb_bytes_to_read is > block_compressed_size,
then, necessarily, it requires that
nb_bytes_to_generate is <= block_decompress_size.
If both are larger, it will generate corrupted data.
2020-08-27 00:17:57 -07:00
Yann Collet
f328e329b3 Merge branch 'fix832' into dev 2020-08-10 18:17:09 -07:00
Yann Collet
28e5a4e054 fixed test of gnu c version 2020-08-10 17:11:49 -07:00
Yann Collet
ac65f939cd
Merge pull request #896 from lz4/fix832
fix #832
2020-08-10 14:31:48 -07:00
Yann Collet
b26c140a54
Merge pull request #895 from lz4/hugefast
Fix #876
2020-08-10 12:52:32 -07:00
Yann Collet
a29ade17a0 fix #832
does no longer rely on default 0-interpretation when __GNUC__ is not defined
2020-08-10 11:51:57 -07:00
Yann Collet
7b1b078dfc fix #876
by introducing a max limit acceleration value
2020-08-10 11:03:27 -07:00
W. Felix Handte
9af86f0841 Remove dirty Field From LZ4_stream_t 2020-08-06 16:06:40 -04:00
Yann Collet
bb5c34a875 bumped version number to v1.9.2
to reduce risks that future bug reports in `dev` branch report `v1.9.1` as the failing version.
2019-07-01 09:01:43 -07:00
Yann Collet
1d759576b9 precise again that LZ4 decoder needs metadata
and that such metadata must be provided / sent / saved by the application.
2019-06-06 13:20:30 -07:00
Yann Collet
5997e139f5 added more details for in-place documentation 2019-05-31 11:56:59 -07:00
Yann Collet
676d46df27 updated LZ4_DECOMPRESS_INPLACE_MARGIN
to pass worst case scenario.
Now adds margin proportional to input size to counter local expansion.
2019-05-30 16:19:30 -07:00
Yann Collet
22adbb176a add more doc on in-place (de)compression 2019-05-30 09:45:21 -07:00
Yann Collet
444550defa ensure lz4.h can be included with or without LZ4_STATIC_LINKING_ONLY in any order
ensure correct propagation of LZ4_DISTANCE_MAX
2019-05-29 12:21:14 -07:00
Yann Collet
b17f578a91 added comments and macros for in-place (de)compression 2019-05-29 12:06:13 -07:00
Yann Collet
ba99eac4d0 several minor style changes recommended by clang-tidy 2019-04-24 10:03:02 -07:00
Yann Collet
7a4e3b1fac bumped version number
to v1.9.1
2019-04-19 11:59:49 -07:00
Yann Collet
0b876db6d4 address a few minor Visual warnings
and created target cxx17build
2019-04-18 16:07:16 -07:00
Yann Collet
25d96f1e4d fix out-of-bound read within LZ4_decompress_fast()
and deprecate LZ4_decompress_fast(),
with deprecation warnings enabled by default.

Note that, as a consequence of the fix,
LZ4_decompress_fast is now __slower__ than LZ4_decompress_safe().
That's because, since it doesn't know the input buffer size,
it must progress more cautiously into the input buffer
to ensure to out-of-bound read.
2019-04-17 15:01:53 -07:00
Yann Collet
1f4a412646 decompress*_fast() function do not generate deprecation warnings
they are classified as deprecated in the API documentation (lz4.h)
but do not yet trigger a warning,
to give time to existing applications to move away.

Also, the _fast() variants are still ~5% faster than the _safe() ones
after Dave's patch.
2019-04-15 10:33:40 -07: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
bcb26565a7 improved documentation for LZ4 dictionary compression 2019-04-11 15:20:46 -07:00
Yann Collet
db60ed19b1 added versions in comments 2019-04-09 18:23:32 -07:00
Yann Collet
c198a39a66 LZ4_initStream() checks alignment restriction
updated associated documentation
2019-04-08 12:49:54 -07:00
Yann Collet
34f0004a5e added comment on initStream + _extState_
as suggested by @felixhandte
2019-04-05 15:35:19 -07:00