Yann Collet
506ae9c333
Merge pull request #439 from eli-b/doc-nohup-behavior
...
Docs: describe behavior under nohup
2018-01-02 00:19:59 +01:00
Yann Collet
c19d12d11e
Merge pull request #438 from eli-b/grammar-fix
...
Grammar: "to silent" -> "to silence"
2018-01-02 00:17:57 +01:00
Eli Boyarski
329dcd4765
Docs: describe behavior under nohup
2018-01-01 15:38:48 +02:00
Eli Boyarski
c8411ea880
Grammar: "to silent" -> "to silence"
2018-01-01 14:15:31 +02:00
Yann Collet
8a9c8e7324
Merge pull request #431 from lz4/newopt
...
new level 10
2017-12-21 09:46:25 +01:00
Yann Collet
55da545e7a
new level 10
...
lz4opt is only competitive vs lz4hc level 10.
Below that level, it doesn't match the speed / compression effectiveness of regular hc parser.
This patch propose to extend lz4opt to levels 10-12.
The new level 10 tend to compress a bit better and a bit faster than previous one (mileage vary depending on file)
The only downside is that `limitedDestSize` mode is now limited to max level 9 (vs 10),
since it's only compatible with regular HC parser.
(Note : I suspect it's possible to convert lz4opt to support it too, but haven't spent time into it).
2017-12-20 14:14:01 +01:00
Yann Collet
ec93bb127f
Merge pull request #427 from lz4/registerLess
...
remove `register` keyword
2017-12-15 14:46:00 -08:00
Yann Collet
4e225165d8
Merge pull request #424 from MaxRis/msbuild-properties-#423
...
Msbuild properties #423
2017-12-11 10:07:03 -08:00
Max Risuhin
9be9573533
EnableWholeProgramOptimization and UseStaticCRT msbuild custom properties
2017-12-11 14:57:19 +02:00
Yann Collet
6bbe45e1b8
remove register
keyword
...
deprecated in newer C++ versions,
and dubious utility
2017-12-04 17:10:23 -08:00
Yann Collet
de49c5bed9
Merge pull request #426 from aliceatlas/cli_chmod_fix
...
Fix cli sometimes calling UTIL_setFileStat on /dev/null
2017-12-04 14:38:00 -08:00
Alice Atlas
42a31aee50
Fix bug which could sometimes result in the lz4 cli chmodding /dev/null if running as root
2017-12-04 16:07:31 -05:00
Yann Collet
6c94c94d46
minor updates to examples
...
see 810e2ca27b (commitcomment-25810887)
2017-11-24 17:18:46 -08:00
Yann Collet
da8bed4b01
API : changed a few variables' names for clarity
...
updated relevant doc.
This patch has no impact on ABI/API, nor on binary generation.
2017-11-20 10:27:05 -08:00
Yann Collet
b48839b41c
updated NEWS
2017-11-13 15:54:55 -08:00
Yann Collet
dac26084a9
Merge pull request #416 from lz4/newopt
...
Improve Optimal parser
2017-11-09 14:13:30 -08:00
Yann Collet
dc3ed5b6a7
added code comments
2017-11-08 17:56:20 -08:00
Yann Collet
63f6039fb3
added constant TRAILING_LITERALS
...
which is more explicit than its value `3`.
reported by @terrelln
2017-11-08 17:47:24 -08:00
Yann Collet
f93b595718
lz4opt: simplified match finder invocation to LZ4HC_FindLongerMatch()
2017-11-08 17:11:51 -08:00
Yann Collet
fa03a9d3d9
added code comments
2017-11-08 08:42:59 -08:00
Yann Collet
b07d36245a
fixed LZ4HC_reverseCountPattern()
...
for multi-bytes patterns
(which is not useful for the time being)
2017-11-07 17:58:59 -08:00
Yann Collet
897f5e9834
removed the ip++ at the beginning of block
...
The first byte used to be skipped
to avoid a infinite self-comparison.
This is no longer necessary, since init() ensures that index starts at 64K.
The first byte is also useless to search when each block is independent,
but it's no longer the case when blocks are linked.
Removing the first-byte-skip saves
about 10 bytes / MB on files compressed with -BD4 (linked blocks 64Kb),
which feels correct as each MB has 16 blocks of 64KB.
2017-11-07 17:37:31 -08:00
Yann Collet
e6365b1854
Merge pull request #418 from lz4/fasterCount
...
faster LZ4_count()
2017-11-07 12:09:32 -08:00
Yann Collet
71fd08c17d
removed legacy version of LZ4HC_InsertAndFindBestMatch()
2017-11-07 11:33:40 -08:00
Yann Collet
c49f66f2ad
ensure pattern
is a 1-byte repetition
2017-11-07 11:29:28 -08:00
Yann Collet
5512a5f1a9
removed useless (1 && ...)
condition
...
as reported by @terrelln
2017-11-07 11:22:57 -08:00
Yann Collet
7130bfe573
improved LZ4HC_reverseCountPattern() :
...
works for any repetitive pattern of length 1, 2 or 4 (but not 3!)
works for any endianess
2017-11-07 11:05:48 -08:00
Yann Collet
a004c1fbee
fixed LZ4HC_countPattern()
...
- works with byte values other than `0`
- works for any repetitive pattern of length 1, 2 or 4 (but not 3!)
- works for little and big endian systems
- preserve speed of previous implementation
2017-11-07 10:53:29 -08:00
Yann Collet
9221419c6f
added LZ4_FORCEINLINE to counter gcc regression
...
as recommended by @terrelln
2017-11-06 17:29:27 -08:00
Yann Collet
d51f046628
2-stages LZ4_count
...
separate first branch from the rest of the compare loop
to get dedicated prediction.
measured a 3-4% compression speed improvement.
2017-11-06 15:42:50 -08:00
Yann Collet
ce8393e8d7
build: minor : make lz4
doesn't compile liblz4 anymore
...
since it's not needed.
2017-11-06 15:20:08 -08:00
Yann Collet
263e398a52
Merge pull request #417 from sylvestre/dev
...
When building with a C++ compiler, remove the 'register' keyword to silent a warning
2017-11-06 13:56:44 -08:00
Sylvestre Ledru
4fed595dac
Only ignore with C++17
2017-11-06 16:16:02 +01:00
Sylvestre Ledru
cca7618f09
When building with a C++ compiler, remove the 'register' keyword to silent a warning
...
For example, with clang:
lz4.c:XXX:36: error: 'register' storage class specifier is deprecated and incompatible with C++17 [-Werror,-Wdeprecated-register]
static unsigned LZ4_NbCommonBytes (register reg_t val)
^~~~~~~~~
2017-11-05 11:48:03 +01:00
Yann Collet
aa99163752
fixed minor static analyzer warning
...
dead assignment
2017-11-03 12:33:55 -07:00
Yann Collet
89821ac7a1
minor comment edit
2017-11-03 11:49:56 -07:00
Yann Collet
1025546347
unified HC levels
...
LZ4_setCompressionLevel() can be users accross the whole range of HC levels
No more transition issue between Optimal and HC modes
2017-11-03 11:28:28 -07:00
Yann Collet
a1f4a0d983
moved ctx->end handling from parsers
...
responsibility better handled one layer above (LZ4HC_compress_generic())
2017-11-03 10:48:55 -07:00
Yann Collet
c9bbad53ff
removed ctx->searchNum
...
nbSearches now transmitted directly as function parameter
easier to track and debug
2017-11-03 10:30:52 -07:00
Yann Collet
e2eca62046
LZ4_compress_HC_continue_destSize() now compatible with optimal parser
...
levels 11+
2017-11-03 02:03:19 -07:00
Yann Collet
3b222d2d96
removes matches[] table
...
saves stack space
clearer match finder interface (no more table to fill)
2017-11-03 01:37:43 -07:00
Yann Collet
320e1d51ac
removed useless parameter from hash chain matchfinder
...
used to be present for compatibility with binary tree matchfinder
2017-11-03 01:20:30 -07:00
Yann Collet
81667a1e96
removed code and reference to binary tree match finder
...
reduced size of LZ4HC state
2017-11-03 01:18:12 -07:00
Yann Collet
82c1aed419
improved level 11 speed
2017-11-03 00:59:05 -07:00
Yann Collet
890c0553d0
optimized skip strategy for level 12
2017-11-03 00:15:52 -07:00
Yann Collet
05d78eb817
new level 11 uses 512 attempts
2017-11-02 19:50:08 -07:00
Yann Collet
a1c5343d89
more generic skip formula
...
improving speed
2017-11-02 18:54:18 -07:00
Yann Collet
e06cb03c11
small adaptations for intermediate level 11
2017-11-02 16:25:10 -07:00
Yann Collet
4b81885800
partial search, while preserving compression ratio
...
tag interesting places
2017-11-02 15:37:18 -07:00
Yann Collet
bd992f12e4
searching match leading strictly farther does not work
...
sometimes, it's better to re-use same match but start it later,
in order to get shorter matchlength code
2017-11-02 15:05:45 -07:00