Commit Graph

1280 Commits

Author SHA1 Message Date
Yann Collet
228e26ee63 Merge pull request #378 from deymo/dev
Allow to predefine FORCE_INLINE macro.
2017-08-11 10:49:25 -07:00
Yann Collet
e98a528576 updated Frame specification
Restored DictID field in Frame header
Bumped specification version to v1.6.0
2017-08-08 11:59:57 -07:00
Alex Deymo
76ef6d0ab0 Allow to predefine FORCE_INLINE macro.
FORCE_INLINE macro is defined based on the compiler used. When using
gcc, it will include "__attribute__((always_inline))" forcing gcc to
always inline all the functions marked as FORCE_INLINE. However, this
can cause a performance degradation of about 15%.

This patch allows to set the FORCE_INLINE macro from the compiler
command line to either "static" or "static inline" giving allowing it
to inline functions as needed when performing optimizations.
2017-08-07 10:34:33 +02:00
Yann Collet
9a967030d7 Merge branch 'dev' of github.com:Cyan4973/lz4 into dev 2017-08-06 21:06:14 -07:00
Yann Collet
c5a015bc3f Merge pull request #376 from ido/patch-1
Fix typos preventing installation of static lib.
2017-08-06 21:05:57 -07:00
Yann Collet
4891f909e1 Merge branch 'dev' of github.com:Cyan4973/lz4 into dev 2017-08-06 21:04:54 -07:00
Yann Collet
dba4d70a1d updated man page 2017-08-06 21:04:46 -07:00
Ido Rosen
8aeaf6bb3a Fix typos preventing installation of static lib. 2017-08-01 00:48:58 -04:00
Yann Collet
ac5ed8e4bb Merge pull request #374 from ferdnyc/patch-2
Generate updated man page from Markdown source
2017-07-08 23:01:22 -07:00
FeRD (Frank Dana)
63d5005681 Generate updated man page from Markdown source 2017-07-08 11:56:55 -04:00
Yann Collet
ef06555100 Merge pull request #373 from ferdnyc/patch-2
Fix formatting of concatenation example
2017-07-08 04:48:32 -07:00
FeRD (Frank Dana)
872f767fec Fix formatting of concatenation example
The "Concatenation of .lz4 files" section contains example commands
that are run together on one line, making them invalid. Wrap them
in a code block and clean up surrounding formatting.
2017-07-08 07:43:51 -04:00
Yann Collet
6ad3a983db fix #369
The bug would make the bt search read one byte in an invalid memory region,
and make a branch decision based on its value.
Impact was small (missed compression opportunity).
It only happens in -BD mode, with extDict-prefix overlapping matches.

The bt match search is supposed to work also in extDict mode.
In which case, the match ptr can point into Dict.
When the match was overlapping Dict<->Prefix,
match[matchLength] would end up outside of Dict, in an invalid memory area.
The correction ensures that in such a case,
match[matchLength] ends up at intended location, inside prefix.
2017-06-26 11:29:05 -07:00
Yann Collet
2ef4afeebe Merge pull request #371 from jku/tests-LIBDIR
tests/Makefile: don't use LIBDIR as variable
2017-06-26 05:14:26 -07:00
Jussi Kukkonen
e14b4c5a3e tests/Makefile: don't use LIBDIR as variable
LIBDIR may be overriden with a environment variable: In this case make
clean breaks in tests/. Use another variable name.
2017-06-26 13:32:40 +03:00
Yann Collet
1525fd1f52 Merge pull request #367 from Chocobo1/fallthrough
Fix gcc7 Wimplicit-fallthrough warnings
2017-06-18 23:55:45 -07:00
Yann Collet
7982a905e2 Merge pull request #368 from Chocobo1/readme
Update README.md
2017-06-18 23:53:58 -07:00
Chocobo1
9d453a1885 Update README.md
Update appveyor badge URL
Remove empty line
2017-06-19 14:17:24 +08:00
Chocobo1
a4ec7fa7b7 Fix gcc7 Wimplicit-fallthrough warnings
For the default Wimplicit-fallthrough=3 level,
the comment should start with "fall*"
2017-06-19 13:57:35 +08:00
Yann Collet
89b9f026c9 made level 10 a bit faster
at the expense of a little bit of compression ratio.

Now speed is intermediate on calgary corpus :
25 - 12 - 8 - 3
2017-06-13 17:25:29 -07:00
Yann Collet
a6fd0f9d0b -g compilation flag not by default for lz4 cli 2017-06-13 14:45:48 -07:00
Yann Collet
bfc1806605 clarified lz4frame api comment (#350) 2017-06-13 12:35:00 -07:00
Yann Collet
d18084c655 report where decompression ends (#313)
suggested by @ehem
note : only works for files < 2 GB
2017-06-12 15:47:43 -07:00
Yann Collet
139a387d17 updated NEWS 2017-06-12 10:54:59 -07:00
Yann Collet
0beaa356f2 fixed minor scan-build warning 2017-06-08 15:04:55 -07:00
Yann Collet
775e63ee01 refactored simple_buffer.c example (#363) 2017-06-08 12:51:56 -07:00
Yann Collet
7e15e240ab added a paragraph on overlap matches 2017-06-06 11:20:36 -07:00
Yann Collet
03d8586fca cli accept block sizes with KB / MB prefixes 2017-05-26 14:38:47 -07:00
Yann Collet
8c355d17fb Merge pull request #360 from Chocobo1/md
[Doc] Fix markdown
2017-05-25 19:55:47 +02:00
Chocobo1
1c9d4091da [Doc] Fix markdown 2017-05-26 01:03:05 +08:00
Yann Collet
6614be7cc4 Merge pull request #359 from PierreNav/dev
Add DLL files to the INSTALL target
2017-05-23 19:37:24 +02:00
PierreNav
4e359f5c35 Add DLL files to the INSTALL target 2017-05-23 11:16:15 +02:00
Yann Collet
5c97cdfa0d Merge pull request #352 from lz4/resetDCtx
Reset decompression context
2017-05-11 14:54:00 -07:00
Yann Collet
2600a154be fix (minor) g++ compatibility for frametest 2017-05-10 17:06:31 -07:00
Yann Collet
e60cbb5cac added test for LZ4F_resetDecompressionContext() 2017-05-10 16:28:36 -07:00
Yann Collet
2012e4de9e fixed c_standards tests
and added entry "make list"
2017-05-10 14:51:09 -07:00
Yann Collet
a902127613 bumped version number to 1.8.0
due to addition of prototype
LZ4F_resetDecompressionContext()
2017-05-10 13:27:18 -07:00
Yann Collet
b8575f2d2b updated Makefile
to automatically build manual files with
make all
2017-05-10 13:26:04 -07:00
Yann Collet
fe932c4527 expose LZ4F_resetDecompressionContext() 2017-05-10 12:25:05 -07:00
Yann Collet
1efa48831e minor readability changes 2017-05-02 12:01:13 -07:00
Yann Collet
a8dd86d93e changed macro HEAPMODE into LZ4_HEAPMODE
This macro is susceptible to be triggered from user side
typically through compiler flag (-DLZ4_HEAPMODE=1).
In which case, it makes sense to prefix the macro
since we want to reduce potential side-effect on namespace.
2017-05-01 22:32:21 -07:00
Yann Collet
11bfedb6c3 Merge pull request #349 from svpv/master
clamp hc levels > 12 + minor fixes in comments
2017-04-29 22:33:39 -07:00
Alexey Tourbin
6cf1f7d758 lz4hc.c: clamp compression levels > 12
I noticed that, while 'lz4 -12' works fine, 'lz4 -13' does not compress
at all.

$ cat </etc/passwd |wc -c
2565
$ lz4 -12 </etc/passwd |wc -c
1456
$ lz4 -13 </etc/passwd |wc -c
2584

Perhaps the best way to fix this is to clamp the compression level
in the LZ4HC_compress_generic routine.
2017-04-29 16:33:15 +03:00
Alexey Tourbin
a41df535f7 lz4cli.c: fix a comment: LZ4HC_DEFAULT_CLEVEL -> LZ4HC_CLEVEL_MAX
Actually the program only mentions LZ4HC_CLEVEL_MAX.
2017-04-29 16:18:37 +03:00
Alexey Tourbin
f3460fc148 liz4hc.h: fix a comment: LZ4HC_MAX_CLEVEL -> LZ4HC_CLEVEL_MAX 2017-04-29 16:06:45 +03:00
Yann Collet
37ef330cd8 Merge pull request #348 from terrelln/deprecate
[LZ4F] Allow users to disable LZ4F_DEPRECATE
2017-04-26 13:13:42 -07:00
Nick Terrell
0b3e807043 [LZ4F] Allow users to disable LZ4F_DEPRECATE 2017-04-26 10:03:23 -07:00
Yann Collet
31e9ed612b Merge pull request #347 from lz4/negativeCLevels
Negative Compression levels
2017-04-11 14:43:11 -07:00
Yann Collet
e2c9b19122 lz4frame : Added negative compression levels 2017-04-09 01:41:36 -07:00
Yann Collet
7eecd32c07 ensure lz4f_cctx internal buffer size remain valid in case of malloc error 2017-04-09 01:11:39 -07:00