Commit Graph

2226 Commits

Author SHA1 Message Date
Hamid Zare
771a7192d6 print the compression ratio 2019-07-11 14:39:29 -07:00
Hamid Zare
658ab8fca1 changed the input text to something more compression friendly 2019-07-11 14:35:51 -07:00
Yann Collet
eb6b599a50
Merge pull request #749 from sylvestre/patch-1
Remove an useless declaration
2019-07-04 13:03:08 -07:00
Sylvestre Ledru
12e5841e76
Remove an useless declaration 2019-07-04 18:13:36 +02:00
Yann Collet
68d045e0b2
Merge pull request #746 from lz4/circleci
CircleCI : reduced test duration
2019-07-03 16:16:52 -07:00
Yann Collet
3d68e32b73
Merge pull request #743 from lz4/fuzzasan_fixed
updated frametest
2019-07-03 16:16:19 -07:00
Yann Collet
fb52a10ced
Merge pull request #748 from amchoukir/amchoukir-doublebuffer-doc
Update blockStreaming_doubleBuffer.md
2019-07-03 16:13:44 -07:00
Amine Choukir
0e6ff83d09
Update blockStreaming_doubleBuffer.md 2019-07-03 11:50:38 +02:00
Yann Collet
4765da5ac4
Merge pull request #745 from lz4/bump_192
bumped version number to v1.9.2
2019-07-01 11:52:08 -07:00
Yann Collet
9ea2835eaa CircleCI : reduced test duration
Ideally, we want to make CircleCI a "fast" test environment, with short feedback loop (~5mn).
We are still far from this goal.

This patch starts this process by removing "long" tasks which are non-essential and redundant with travisCI.

It also acknowledges that parallelism is broken.
The script should be more heavily updated to support parallelism,
which might be important to support its goal.
2019-07-01 10:55:54 -07: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
2cacdd2142 fix minor cppcheck warnings 2019-06-30 15:36:32 -07:00
Yann Collet
89e96e55ff updated frametest
so that noisy src decompression
doesn't generate output
nor fails when decompression fails (which is expected).
2019-06-30 14:57:12 -07:00
Yann Collet
81dba1946e Merge branch 'fuzzasan' into fuzzasan_fixed 2019-06-30 14:01:08 -07:00
Yann Collet
4e87942529 frametest: added LZ4F decoder noise test 2019-06-30 13:59:49 -07:00
Yann Collet
9dc5981368
Merge pull request #739 from cmeister2/cmeister2/ossfuzz
oss-fuzz: Add a fuzzing target that compiles in the oss-fuzz environment
2019-06-30 13:05:15 -07:00
Max Dymond
f3ec519f59
Remove unnecessary call to Makefile.inc 2019-06-30 20:16:03 +01:00
Yann Collet
40bd6164bb
Merge pull request #741 from lzutao/meson-deprecated-warn
meson: Fix deprecated warnings on build options
2019-06-30 11:33:38 -07:00
Yann Collet
bccbdb47be
Merge pull request #742 from lz4/fuzzasan_fixed
New fuzzer test for #738
2019-06-30 09:41:56 -07:00
Lzu Tao
84f98dd316 meson: Rename options in travis config 2019-06-29 20:54:39 +07:00
Yann Collet
1ccca52f53 Merge branch 'dev' into fuzzasan_fixed 2019-06-28 21:03:07 -07:00
Yann Collet
3b917ef6e6 travisCI: added ASAN fuzzer tests
and fixed minor formatting warnings
2019-06-28 20:55:47 -07:00
Yann Collet
567b4e098b moved noisy-src decoder test into cBuffer_exact
so that it can also catch any potential read out-of-bound in the input buffer
(none reported so far, just a precaution for the future).
2019-06-28 20:23:12 -07:00
Yann Collet
62f59d562b fuzzer: added test to catch #738 2019-06-28 20:15:43 -07:00
Lzu Tao
ff27a1572b meson: Always build gen_manual on build machine
As gen_manual is using as a generator, not a binary target
installed on host machine.
2019-06-29 10:11:32 +07:00
Lzu Tao
4c60f25c65 meson: Fix deprecated warnings on build options
Meson now reserves `build_` prefix options.
2019-06-29 10:10:05 +07:00
Yann Collet
8b97fcda60
Merge pull request #740 from terrelln/fix2
Fix out-of-bounds read
2019-06-28 19:22:54 -07:00
Max Dymond
e2a33f12e1
More markups for style changes 2019-06-29 00:23:06 +01:00
Max Dymond
02b5b3c242
Move to using C rather than C++ for compilation 2019-06-28 23:48:33 +01:00
Nick Terrell
e72d442300 Fix out-of-bounds read of up to 64 KB in the past 2019-06-28 14:58:35 -07:00
Max Dymond
60d71dc20c
Write a simple decompress target as well 2019-06-28 22:43:04 +01:00
Max Dymond
88a7cfd728
Code review markups:
- Correct use of CPPFLAGS
- Detect allocation failure
- Add a CHECK macro for failure
2019-06-28 20:54:46 +01:00
Max Dymond
a5cf079d4d
Add a fuzzing target that compiles in the oss-fuzz environment 2019-06-28 08:30:02 +01:00
Yann Collet
9a2a9f2d0f
Merge pull request #735 from lz4/versionOut
fix #734 : --version should output to stdout
2019-06-25 10:32:19 -07:00
Yann Collet
baf9b0e043 fix #734 : --version should output to stdout
instead of stderr
2019-06-24 16:08:30 -07:00
Yann Collet
798301b4e1 update simple_buffer example
there were a few tiny inaccuracies, especially in error conditions.
2019-06-06 14:17:44 -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
3a3639e32d
Merge pull request #727 from ephiepark/dev
CircleCI : use custom Docker Image with pre-installed dependencies
2019-06-05 14:34:28 -07:00
Ephraim Park
f7b52ecbba circleci : use custom docker image with pre-installed dependencies 2019-06-05 13:12:51 -07:00
Yann Collet
348e107d99 restored FORCE_INLINE 2019-06-04 14:04:49 -07:00
Yann Collet
d82a22b3f1
Merge pull request #718 from lz4/fullbench
fullbench: added test scenario LZ4F_decompress_followHint
2019-05-31 15:18:12 -07:00
Yann Collet
33a04fb8bd fullbench: ensure decompressionFunction and dName are initialized
Visual Studio seems to miss that they are necessarily initialized in the switch() { case: }
2019-05-31 13:25:12 -07:00
Yann Collet
280fc0856d
Merge pull request #717 from lz4/inplace
Added documentation and macro to support in-place compression and decompression
2019-05-31 12:59:38 -07:00
Yann Collet
8008fdf396
Merge pull request #719 from parheliamm/dev
FAST_DEC_LOOP: move offset check in specific condition.
2019-05-31 12:23:52 -07:00
Yann Collet
99f1721ff5 replaced while(1)
by for (;;)
just to please Visual Studio C4127 .
2019-05-31 12:01:33 -07:00
Yann Collet
5997e139f5 added more details for in-place documentation 2019-05-31 11:56:59 -07:00
Yann Collet
33cb8518ac decompress: changed final memcpy() into memmove()
for compatibility with in-place decompression scenarios.
2019-05-31 11:44:37 -07:00
Yann Collet
4eec64e4d8 Makefile removed CFLAGS modifier
which was removing `-O3` as a side effect
2019-05-31 11:31:48 -07:00
Chenxi Mao
64b5917736 FAST_DEC_LOOP: only did offset check in specific condition.
When I did FAST_DEC_LOOP performance test, I found the
offset check is much more than v1.8.3

You will see the condition check difference via lzbench with dickens test case.
v1.8.3 34959
v.1.9.x 1055885

After investigate the code, we could see the difference.
v.1.8.3 SKIP the condition check if
if condition is true in:
https://github.com/lz4/lz4/blob/v1.8.3/lib/lz4.c#L1463
AND below condition is true
https://github.com/lz4/lz4/blob/v1.8.3/lib/lz4.c#L1478\
The offset check should be invoked.

v1.9.3
The offset check code will be invoked in every loop which lead to downgrade.
So the fix would be move this check to specific condition
to avoid useless condition check.

After this change, the call number is same as v1.8.3
2019-05-31 08:36:13 +08:00
Yann Collet
89c97d5ea6 fullbench: added test scenario LZ4F_decompress_followHint
This emulates a streaming scenario,
where the caller follows rigorously the srcSize hints
provided as return value of LZ4F_decompress().

This is useful to show the issue in #714,
where data is uselessly copied in a tmp buffer first.
2019-05-30 17:29:51 -07:00