| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
to reduce risks that future bug reports in `dev` branch report `v1.9.1` as the failing version.
|
| |
|
|
|
|
| |
and that such metadata must be provided / sent / saved by the application.
|
| |
|
|\
| |
| | |
Added documentation and macro to support in-place compression and decompression
|
| | |
|
| |
| |
| |
| | |
for compatibility with in-place decompression scenarios.
|
| |
| |
| |
| |
| | |
to pass worst case scenario.
Now adds margin proportional to input size to counter local expansion.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
order
ensure correct propagation of LZ4_DISTANCE_MAX
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|/ |
|
|\
| |
| | |
Add multiframe report to --list command
|
| | |
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
Fix test-amalgamation
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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")
|
|/ |
|
|
|
|
|
|
| |
Moved a few other tests to Makefiles.inc. Other things might need to go there.
Made a test for symlink appropriateness. Windows can NOT handle them the same way Unix-like operating systems do (if at all). This is mostly the same as the Visual C projects.
embed version info into .dll and .exes that are redistributed.
|
|\
| |
| | |
Jpm makefile - as described in https://github.com/lz4/lz4/issues/688
|
| | |
|
| |
| |
| |
| | |
"install" in one place to try to isolate it.
|
| | |
|
| |
| |
| |
| | |
to v1.9.1
|
| |
| |
| |
| | |
fix #679, reported by @degski
|
| | |
|
| |
| |
| |
| | |
and created target cxx17build
|
| |
| |
| |
| | |
was disabled for tests
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|/ |
|
|
|
|
| |
as suggested by @sloutsky in #671
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
between lz4.c and lz4hc.c .
was left in a strange state after the "amalgamation" patch.
Now only 3 directives remain,
same name across both implementations,
single definition place.
Might allow some light simplification due to reduced nb of states possible.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
when one block was not compressible,
it would tag the context as `dirty`,
resulting in compression automatically bailing out of all future blocks,
making the rest of the frame uncompressible.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
yet some overly cautious overflow risk flag,
while it's actually impossible, due to previous test just one line above.
Changing the cast position, just to be please the thing.
|
| |
| |
| |
| |
| |
| |
| |
| | |
since Visual 2017,
worries about potential overflow, which are actually impossible.
Replaced (c * a) by (c ? a : 0).
Will likely replaced a * by a cmov.
Probably harmless for performance.
|
|/
|
|
| |
output can use the full length of output buffer
|
|
|
|
| |
as this is a very frequent source of confusion for new users.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\
| |
| | |
made LZ4F_getHeaderSize() public
|
| | |
|