W. Felix Handte
00eadadbfc
Reset Table on Inputs Larger than 2KB
2018-03-12 14:58:43 -04:00
W. Felix Handte
d571d0cdba
Avoid DictSmall Checks By Strategically Bumping CurrentOffset
2018-03-12 14:58:43 -04:00
W. Felix Handte
1c4601d643
Restore DictIssue Check
2018-03-12 14:58:43 -04:00
W. Felix Handte
d6ed9a7799
Avoid dictionary == NULL Check
2018-03-12 14:58:43 -04:00
W. Felix Handte
efc419a6d4
Replace calloc() Calls With malloc() Where Possible
2018-03-12 14:58:43 -04:00
W. Felix Handte
80790c587b
Copy the Dict Table Into the Context for Large Compressions
2018-03-12 14:58:43 -04:00
W. Felix Handte
9dcd9abc14
Make LZ4F_compressFrame_usingCDict Take a Compression Context
2018-03-12 14:58:43 -04:00
W. Felix Handte
14ce912b70
Switch Current Offset to 1 Only When in External Dictionary Context Mode
2018-03-12 14:58:43 -04:00
W. Felix Handte
cea09d67a9
Hoist Table Reset One Level Up
2018-03-12 14:58:43 -04:00
W. Felix Handte
68c6bd17b8
Set Dictionary Context Pointer Rather than Copying the Context In
2018-03-12 14:58:43 -04:00
W. Felix Handte
73cc39327e
Lookup Matches in Separate Dictionary Context
2018-03-12 14:58:43 -04:00
W. Felix Handte
62cb52b341
Initialize Current Offset to 1
2018-03-12 14:58:43 -04:00
W. Felix Handte
7060bcabf0
Only Re-Alloc / Reset When Needed When Switching Between Regular and High Compression Modes
2018-03-12 14:58:43 -04:00
W. Felix Handte
b3628cb0c5
Avoid Resetting the Context When Possible
2018-03-12 14:58:43 -04:00
W. Felix Handte
aa36e118f1
Const-ify Table Arg to LZ4_getPosition(OnHash)
2018-03-12 14:58:43 -04:00
W. Felix Handte
d6a3024dbb
Add LZ4_compress_fast_safeExtState Function
2018-03-12 14:58:43 -04:00
W. Felix Handte
5709891de6
Add a Table Type Field to LZ4_stream_t
2018-03-12 14:58:43 -04:00
W. Felix Handte
6933f5ad9c
Remove Obsolete Stream Functions to Free Space in LZ4_stream_t
2018-03-12 14:58:43 -04:00
W. Felix Handte
6d156fea56
Allow Empty Dictionaries
2018-03-12 14:58:43 -04:00
Yann Collet
b5233d3726
updated LZ4F_compressBound() documentation
...
to clarify it includes potentially buffered data.
2018-02-27 23:23:27 -08:00
Yann Collet
860ff77909
Merge pull request #478 from lz4/mergeOpt
...
merge lz4opt.h into lz4hc.c
2018-02-26 14:06:31 -08:00
Yann Collet
39fda9a447
bumped version number to v1.8.2
...
updated NEWS was current progresses
2018-02-26 13:50:04 -08:00
Yann Collet
ba115386fa
update code comment on LZ4 streaming interface
...
notably regarding LZ4_saveDict() speed advantage,
answering #477 .
2018-02-26 13:31:18 -08:00
Yann Collet
550b40849f
merge lz4opt.h into lz4hc.c
...
Having a dedicated file for optimal parser
made sense during its creation,
it allowed Przemyslaw to work more freely on lz4opt, with less dependency on lz4hc,
moreover, the optimal parser was more complex, with its own search functions.
Since the optimal was rewritten last year, it's now a lot lighter.
It makes more sense now to integrate it directly inside lz4hc.c,
making it easier to edit (editors are a bit "lost" inside a `*.h` dependent on its #include position),
it also reduces the number of files in the project,
which fits pretty well with lz4 objectives.
(adding lz4hc requires "just" lz4hc.h and lz4hc.c).
2018-02-25 00:32:09 -08:00
Yann Collet
7173a631db
edge case : compress up to end-mflimit (12 bytes)
...
The LZ4 block format specification
states that the last match must start
at a minimum distance of 12 bytes from the end of the block.
However, out of an abundance of caution,
the reference implementation would actually stop searching matches
at 13 bytes from the end of the block.
This patch fixes this small detail.
The new version is now able to properly compress a limit case
such as `aaaaaaaabaaa\n`
as reported by Gao Xiang (@hsiangkao).
Obviously, it doesn't change a lot of things.
This is just one additional match candidate per block, with a maximum match length of 7 (since last 5 bytes must remain literals).
With default policy, blocks are 4 MB long, so it doesn't happen too often
Compressing silesia.tar at default level 1 saves 5 bytes (100930101 -> 100930096).
At max level 12, it saves a grand 16 bytes (77389871 -> 77389855).
The impact is a bit more visible when blocks are smaller, hence more numerous.
For example, compressing silesia with blocks of 64 KB (using -12 -B4D) saves 543 bytes (77304583 -> 77304040).
So the smaller the packet size, the more visible the impact.
And it happens we have a ton of scenarios with little blocks using LZ4 compression ...
And a useless "hooray" sidenote :
the patch improves the LZ4 compression record of silesia (using -12 -B7D --no-frame-crc) by 16 bytes (77270672 -> 77270656)
and the record on enwik9 by 44 bytes (371680396 -> 371680352) (previously claimed by [smallz4](http://create.stephan-brumme.com/smallz4/ ) ).
2018-02-24 11:47:53 -08:00
Yann Collet
71e16fa11a
Merge pull request #471 from lz4/fasterHC
...
Faster HC
2018-02-20 21:04:07 -08:00
Yann Collet
25b16e8a2e
added one assert()
...
suggested by @terrelln
2018-02-20 15:25:45 -08:00
Yann Collet
d74f079748
update API doc regarding double-buffer strategy
...
answering question #473
2018-02-18 11:00:33 -08:00
Yann Collet
d3a13397d9
slight hc speed benefit (~+1%)
...
by optimizing countback
2018-02-12 00:01:58 -08:00
Yann Collet
219abab74b
removed LZ4_copy8
...
better use memcpy() directly
2018-02-11 22:20:09 -08:00
Yann Collet
2b674bf02f
slightly improved hc compression speed (+~1-2%)
...
by removing bad candidates faster.
2018-02-11 02:45:36 -08:00
Yann Collet
3ad3b0f850
slightly improved decompression speed (~+1-2%)
...
by making shortcut slightly more common
2018-02-11 01:43:20 -08:00
Ben Boeckel
c4671be550
intel: do not use __attribute__((packed)) on Windows
...
On Windows, the Intel compiler is closer to MSVC rather than GCC and
does not support the GCC attribute syntax.
Fixes #468
2018-02-08 09:15:27 -05:00
Yann Collet
ea25250c99
fixed code comment as detected in #466
...
Also clarified a few API code comments
and updated associated html documentation
2018-02-07 02:21:25 -08:00
Yann Collet
20e969e579
fuzzer: added low address compression test
...
is expected to work on linux+gcc only.
2018-02-05 15:19:00 -08:00
Nick Terrell
e832a3d87a
Clarify the requirements of the LZ4 streaming API
2018-02-01 16:08:59 -08:00
Yann Collet
5fd3ac7904
Merge branch 'dev' into frameCompress
2018-01-31 17:18:57 -08:00
Yann Collet
87fb7a1d03
refactored frameCompress example
...
to better reflect LZ4F API usage.
2018-01-31 14:33:16 -08:00
Asger Hautop Drewsen
c129f480e7
Always prefer c++14 attributes if available
2018-01-31 20:24:44 +01:00
Asger Hautop Drewsen
865bd83e13
Ensure LZ4_DEPRECATED("...") is before LZ4LIB_API
...
When using clang++ with std c++14 or c++17 you would get the error "an attribute list cannot appear here" when including "lz4.h" as the visibility attribute is before the c++ attribute.
This ensures that the [[deprecated]] c++ attribute is before everything
else in the function declarations.
2018-01-31 13:33:07 +01:00
Nick Terrell
30e92f320c
[lz4hc] level == 0 means default, not level 1
2018-01-22 12:50:06 -08:00
Po-Chuan Hsieh
75b81bbbf0
Change file format back to ASCII (from UTF-8)
...
- Replace U+00A0 by space
- Fix build failure of archivers/py-borgbackup in FreeBSD
Reference: https://bugs.FreeBSD.org/225235
2018-01-18 03:13:05 +08:00
Yann Collet
5e7780d2d8
lz4frame : removed some intermediate stage from LZ4F_decompress()
...
ensure some strange jump cases are not possible
(they were already not possible, but static analyzer couldn't understand it).
2018-01-14 00:15:07 -08:00
Yann Collet
18b4c66d25
ensure a ptr is non-null
...
with an assert()
to help static analyzer understanding this condition.
2018-01-13 22:47:46 -08:00
Yann Collet
4d61ebc9c8
modified formulation for LZ4F_compressBound()
...
previous version used an intentional overflow,
which is defined since it uses unsigned type,
but static analyzer complain about it.
2018-01-13 22:39:39 -08:00
Po-Chuan Hsieh
47bf1a9f01
Fix lz4 version
2018-01-14 06:38:03 +08:00
Yann Collet
c423dc21bd
updated LZ4F_decompress() documentation
2018-01-13 13:16:31 -08:00
Yann Collet
58199f1311
Merge pull request #443 from terrelln/440
...
[lz4f] Skip memcpy() on empty dictionary
2018-01-10 19:06:21 +01:00
W. Felix Handte
ebef34fe79
Add Option to Make lz4frame_static.h Functions Visible in Shared Objects
...
In some contexts, *cough*like at facebook*cough*, dynamic linking is used in
contexts which aren't truly dynamic. That is, the guarantee is maintained that
a program will only ever execute against the library version it was compiled
to interact with.
For those situations, introduce a compile-time flag that overrides hiding
these unstable APIs in shared objects.
2018-01-08 14:46:22 -05:00
Yann Collet
0b203b04f6
Merge pull request #434 from lz4/pattern
...
conditional pattern analysis
2018-01-06 06:58:41 +01:00
Nick Terrell
c2dd686e96
[lz4f] Skip memcpy() on empty dictionary
2018-01-05 14:30:49 -08:00
Yann Collet
7d2f30c7d1
lz4opt supports _destSize
...
no longer limited to level 9
2017-12-22 12:47:59 +01:00
Yann Collet
9753ac4c91
conditional pattern analysis
...
Pattern analysis (currently limited to long ranges of identical bytes)
is actually detrimental to performance
when `nbSearches` is low.
Reason is : `nbSearches` provides a built-in protection for these cases.
The problem with patterns is that they dramatically increase the number of candidates to visit.
But with a low nbSearches, the match finder just aborts early.
In such cases, pattern analysis adds some complexity without reducing total nb of candidates.
It actually increases compression ratio a little bit, by filtering only "good" candidates,
but at a measurable speed cost, so it's not a good trade-off.
This patch makes pattern analysis optional.
It's enabled for levels 8+ only.
2017-12-22 08:07: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
6bbe45e1b8
remove register
keyword
...
deprecated in newer C++ versions,
and dubious utility
2017-12-04 17:10:23 -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
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
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
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
Yann Collet
8e16eb0cd1
fixed last lost bytes in maximal mode
...
even gained 2 bytes on calgary.tar...
added conditional traces `g_debuglog_enable`
2017-11-02 14:53:06 -07:00
Yann Collet
0ff4df1b94
changed strategy : opt[] path is complete after each match
...
previous strategy would leave a few "bad choices"
on the ground they would be fixed later,
but that requires passing through each position to make the fix
and cannot give the end position of the last useful match.
2017-11-02 13:44:57 -07:00
Yann Collet
cc4a109b0d
Merge pull request #415 from lz4/fasterDecodingXp
...
Faster decoding xp
2017-11-01 09:58:49 -07:00
Yann Collet
15b0d229c1
Merge branch 'dev' into btopt
2017-10-31 17:55:01 -07:00
Yann Collet
a5731d6b26
minor change, to help store forwarding
...
in a marginal case (offset==4)
2017-10-31 15:51:56 -07:00
Yann Collet
9378f76e41
extended shortcut match length to 18
2017-10-31 14:20:25 -07:00
Yann Collet
ace334a4c9
minor : coding style : use ML_MASK constant
2017-10-31 12:22:15 -07:00
Yann Collet
3f173052ae
added comments, as suggested by @terrelln
2017-10-31 11:49:57 -07:00
Yann Collet
931c5c20d0
fixed minor overflow mistake in optimal parser
...
saving 20 bytes on calgary.tar
2017-10-30 17:47:54 -07:00
Yann Collet
ab4bd93f59
fixed minor initialization warning
2017-10-30 16:10:25 -07:00
Yann Collet
e0914ff70c
more complete shortcut - passes tests
2017-10-30 16:07:15 -07:00
mikir
63a7f34fee
Separated visibility from LZ4LIB_API macro.
2017-10-30 13:44:24 +01:00
Yann Collet
a31b7058cb
small modification of lz4 decoder to shortcut common case (short branch).
2017-10-25 10:10:53 +02:00
Yann Collet
16a4337473
added hash chain with conditional length
...
not a success yet
2017-10-25 07:07:08 +02:00
Yann Collet
a12cdf00c3
lz4opt: added hash chain search
2017-10-20 17:04:29 -07:00
Yann Collet
fd6bd5107b
switched many types to int
2017-10-20 15:33:52 -07:00
Yann Collet
d813134619
removed SET_PRICE macro
2017-10-20 13:44:49 -07:00
Yann Collet
fa064c8a8c
removed one macro usage
2017-10-20 13:32:45 -07:00
Yann Collet
ee62faee08
minor refactor
...
reduce variable scope
remove one macro usage
2017-10-20 12:05:00 -07:00
Yann Collet
fc879fe170
lz4opt: refactor sequence reverse traversal
2017-10-20 11:32:15 -07:00
Yann Collet
c058753393
refactor variable matchnum
...
separate initial and iterative search
renamed nb_matches
2017-10-20 11:24:56 -07:00
Yann Collet
7bb0a617ee
simplified initial cost conditions
...
llen integrated in opt[]
2017-10-20 11:00:10 -07:00
Yann Collet
6cec68de39
added assert
2017-10-19 16:47:25 -07:00
Yann Collet
ac2ad52257
renamed last_pos into last_match_pos
2017-10-19 16:43:36 -07:00
Yann Collet
708e2cbb60
simplified early exit when single solution
2017-10-19 16:39:40 -07:00
Rei Odaira
73bcf90e51
Use the optimization level of O2 for the decompression functions on ppc64le with gcc, to avoid harmful unrolling and SIMDization with O3
2017-10-13 14:53:37 -05:00
Yann Collet
a4314829db
fused getLongerMatch and getWiderMatch
2017-10-09 01:50:28 -07:00
Yann Collet
97c18f5f0e
re-inserted last byte test in widerMatch
2017-10-09 01:44:05 -07:00
Yann Collet
bdca63ed69
early out is not better
2017-10-09 00:36:47 -07:00
Yann Collet
1ee17e4eb8
optional fuse
2017-10-09 00:31:12 -07:00
Yann Collet
b9459faeb2
improved search of rep-1 patterns
2017-10-08 23:55:42 -07:00
Yann Collet
f1fa91d6fc
insertAndFindBestMatch defers to insertAndGetWiderMatch
2017-10-08 23:40:21 -07:00
Yann Collet
87968517f9
fixed decoding block checksum in lz4frame
2017-10-04 15:24:08 -07:00
Yann Collet
f6b31bf0d0
fix #404
...
static analyzer `cppcheck` complains about a shift-by-32 on a 32 bits value,
which is an undefined behavior.
However, the flagged code path is never triggered in 32-bits mode,
(actually, it's not even generated if DCE kicks in),
the shift-by-32 is necessarily performed on a 64-bits value.
While it doesn't change anything regarding lz4 code generation, for both 32 and 64 bits mode,
(can be checked by md5sum on the generated binary),
the shift has been rewritten in a way which should please this static analyzer,
since it now pretends to shift by 16 on 32-bits cpu (note : it doesn't matter since the code will not even be generated in this case).
Note : this is a blind fix, the new code has not been tested with cppcheck, because cppcheck only works on Windows.
Other static analyzer, such as scan-build, do not trigger this false positive.
2017-09-30 10:35:55 -07:00
Yann Collet
ceb868f442
minor lz4frame code refactor
...
try to improve code readability.
minor optimization on condition to preserve history.
2017-09-23 15:06:24 -07:00
W. Felix Handte
77f7245ea7
Fix Segfault When Copying Dict
...
dctx must have been initialized before we can copy the dictionary in.
2017-09-22 13:20:49 -07:00
Yann Collet
a30cba08f4
fixed a bunch of -Wcomma warnings
...
reported by @rvandermeulen (#398 )
2017-09-10 14:32:38 -07:00
Yann Collet
b500c5282e
fix #397 : decompression failed when using a combination of extDict + low memory address
...
Reported and fixed by @jscheid
Note : we are missing a test case to include it in the CI
2017-09-07 12:48:24 -07:00
Yann Collet
00418f7611
bench : made decompression speed evaluation same time as compression
...
minor : slightly modified an example do avoid disabling a gcc warning through #pragma
2017-09-07 12:12:36 -07:00
Yann Collet
ee5332438b
minor Makefile fixes
2017-09-06 17:41:44 -07:00
Yann Collet
1ad9a36cfb
updated lib/README
...
clarifications, improved wording
2017-09-06 11:22:45 -07:00
Yann Collet
3d260f3522
complementary information for #394
2017-08-30 16:09:10 -07:00
Yann Collet
e3c71584ff
clarified documentation of streaming decompression functions
...
(synchronous bufferless mode)
answering questions by @jtbandes (#394 )
2017-08-30 15:42:04 -07:00
Yann Collet
f212a10ae0
fixed FS-independent file order in /lib
...
identified by @bmwiedemann
2017-08-29 15:31:56 -07:00
Yann Collet
c4d6884cd8
build: source files sorted in a FS independent manner
...
to be more compatible with reproducible builds.
patch inspired by @bmwiedemann
2017-08-26 12:22:51 -07:00
Nick Terrell
252ce14fd2
Don't use C++11 deprecation attribute with clang
...
Clang doesn't accept a C++11 attribute following `LZ4LIB_API`.
Use the GNU attribute instead.
2017-08-24 14:06:34 -07:00
tcpan
f423d016cf
FIX: added prefix to FORCE_INLINE to prevent redefinition error during compilation when used with other libraries that define FORCE_INLINE
2017-08-24 10:14:20 -04:00
Yann Collet
c10863b98e
fix : asan error in dctx, due to increased maximum frame header size, reported by Craig Young
2017-08-17 10:55:30 -07:00
Yann Collet
a1f3a27e9b
Merge branch 'dev' into installVars and fixed conflicts
2017-08-15 16:57:00 -07:00
Yann Collet
af9d72b7f6
Merge pull request #383 from lz4/blockChecksum
...
Block checksum
2017-08-15 16:50:04 -07:00
Yann Collet
8593ba8831
Merge pull request #380 from lz4/dictID
...
Frame Dictionary API
2017-08-15 14:12:04 -07:00
Yann Collet
aea7d521ae
better respect GNU standard Makefile conventions
...
supports lowercase directory variables
add an "Installation" section in README.md
added an INSTALL file
2017-08-14 15:13:23 -07:00
Yann Collet
77f99d2922
restored block checksum capability at lz4frame API level
2017-08-11 17:46:52 -07:00
Yann Collet
757497ae3d
implemented lz4frame decompression API
2017-08-10 16:53:57 -07:00
Yann Collet
4531637ecd
support dictionary compression with independent blocks
2017-08-10 12:12:53 -07:00
Yann Collet
8d597d62d5
fixed gcc prototype warning
2017-08-10 10:28:52 -07:00
Yann Collet
d8aafe2c52
dictionary compression correctly uses compression level
...
Not obvious : copying the state was copying cdict's compression level
2017-08-10 00:48:19 -07:00
Yann Collet
ca2fb166ab
fixed C++ conversion warnings
2017-08-09 18:22:26 -07:00
Yann Collet
bf8daa2fd5
fixed uninitialization error in lz4frame
2017-08-09 18:00:48 -07:00
Yann Collet
31f2cdf4d2
implemented dictionary compression in lz4frame
...
note : only compression API is implemented and tested
still to do : decompression API
2017-08-09 16:51:19 -07:00
Yann Collet
a82dadfbae
added dictID inside LZ4F_frameInfo_t
...
Compressor can set dictID on LZ4F_compressBegin()
Decompressor can retrieve it using LZ4F_getFrameInfo()
2017-08-08 17:43:11 -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
Ido Rosen
8aeaf6bb3a
Fix typos preventing installation of static lib.
2017-08-01 00:48:58 -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
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
bfc1806605
clarified lz4frame api comment ( #350 )
2017-06-13 12:35:00 -07:00
Yann Collet
139a387d17
updated NEWS
2017-06-12 10:54:59 -07:00
Yann Collet
e60cbb5cac
added test for LZ4F_resetDecompressionContext()
2017-05-10 16:28:36 -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
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
f3460fc148
liz4hc.h: fix a comment: LZ4HC_MAX_CLEVEL -> LZ4HC_CLEVEL_MAX
2017-04-29 16:06:45 +03:00
Nick Terrell
0b3e807043
[LZ4F] Allow users to disable LZ4F_DEPRECATE
2017-04-26 10:03:23 -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
Yann Collet
e169edac05
lz4frame : control lz4 context creation success
2017-04-08 18:27:31 -07:00
Yann Collet
e2827775ee
make __packed memory access default for gcc
...
It's always as good or better then memcpy()
but depends on gcc-specific extension.
solves https://github.com/facebook/zstd/issues/620
2017-03-30 12:22:17 -07:00
Yann Collet
6226d52eab
fixed minor Visual warning
2017-03-29 14:18:10 -07:00
Yann Collet
b88df6b1b0
Improved comments on LZ4F_getFrameInfo()
...
and added LZ4F_resetCompressionContext()
2017-03-29 12:51:08 -07:00
Yann Collet
f0a7651fce
Safer LZ4_getFrameInfo()
...
LZ4_getFrameInfo() is now guaranteed to keep dctx state clean,
even in case of failure.
2017-03-28 17:10:01 -07:00
Yann Collet
4567d0def5
Merge pull request #340 from lz4/optlz4opt
...
lz4opt
2017-03-24 17:10:45 -07:00
Yann Collet
38362c1d65
Merge pull request #338 from ldv-alt/dev
...
Export deprecated symbols declared in lz4hc.h
2017-03-24 12:03:32 -07:00
Yann Collet
60b6d2907f
improved level 10 speed for degenerated cases
2017-03-24 11:29:35 -07:00
Yann Collet
8f8fc52fcf
Merge branch 'dev' into optlz4opt
2017-03-24 11:00:40 -07:00
Yann Collet
0863931a1c
fixed API comment for LZ4F_createCompressionContext()
...
as reported by @nh2
2017-03-24 10:34:18 -07:00
Dmitry V. Levin
dab3590fce
Export deprecated symbols declared in lz4hc.h
...
Commit 25b2435885
exported deprecated
symbols declared in lz4.h by marking all LZ4_DEPRECATED functions with
LZ4LIB_API attribute. This change does the same with functions declared
in lz4hc.h file, thus extending the export to lz4hc.h.
As result, the following 17 deprecated functions are exported again:
LZ4_compressHC
LZ4_compressHC2
LZ4_compressHC2_continue
LZ4_compressHC2_limitedOutput
LZ4_compressHC2_limitedOutput_continue
LZ4_compressHC2_limitedOutput_withStateHC
LZ4_compressHC2_withStateHC
LZ4_compressHC_continue
LZ4_compressHC_limitedOutput
LZ4_compressHC_limitedOutput_continue
LZ4_compressHC_limitedOutput_withStateHC
LZ4_compressHC_withStateHC
LZ4_createHC
LZ4_freeHC
LZ4_resetStreamStateHC
LZ4_sizeofStreamStateHC
LZ4_slideInputBufferHC
2017-03-24 03:12:48 +00:00
Yann Collet
68044acfec
Merge branch 'optlz4opt' of github.com:Cyan4973/lz4 into optlz4opt
2017-03-20 09:58:00 -07:00
Yann Collet
b8bc70022b
minor refactor
2017-03-20 05:04:12 -07:00
Yann Collet
cea8f60df1
slight btopt speed improvement
...
removing a useless test
2017-03-20 02:33:02 -07:00
Yann Collet
f513020a6d
slight btopt speed improvement
...
removing a useless test
2017-03-17 18:07:53 -07:00
Yann Collet
8bd32a17b1
made SET_PRICE macro more usable
...
previous version would use argument to also change target member.
Now, only values are transferred
2017-03-17 17:42:47 -07:00
Yann Collet
118b47f3d1
improved lz4opt speed (~4%)
2017-03-17 16:53:35 -07:00
Yann Collet
eff6166eb8
minor price function optimization
2017-03-17 15:51:21 -07:00
Yann Collet
0d073d4d28
added extern C
for lz4.h static section
...
should make the file more compatible with C++ compiler, such as Visual or g++
2017-03-17 15:11:09 -07:00
Yann Collet
aae447fffd
LZ4_compress_HC_continue_destSize() works as intended up to level 10
...
It's incompatible with btopt though,
so cLevel >= 11 feature much reduced performance (degraded mode)
2017-03-16 15:41:30 -07:00
Yann Collet
cd35f0d98c
LZ4_compress_HC_destSize() uses LZ4HC_compress_generic() code path
...
Limits compression level to 10,
to remain compatible with Hash Chain.
2017-03-16 15:10:38 -07:00
Yann Collet
6b2a1b3606
updated lz4 version number
2017-03-16 02:24:46 -07:00
Yann Collet
430b7d32b3
created LZ4_HC_STATIC_LINKING_ONLY section
...
where are exposed new prototypes *_destSize()
2017-03-16 02:16:24 -07:00
Yann Collet
e945a27f9c
fix #333 : expose obsolete decoding functions
...
with deprecation warning.
notified by Chen Yufei
2017-03-14 21:21:54 -07:00
Yann Collet
b9132bedcd
Merge pull request #331 from ldv-alt/dev
...
Export only those symbols that are part of public API
2017-03-12 03:16:23 -07:00
Dmitry V. Levin
883ebdcee0
Export only those symbols that are part of public API
...
Specify -fvisibility=hidden parameter when linking the shared library
using -fPIC, assuming that gcc >= 4 is used.
This change results to unexporting of the following 42 functions:
LZ4F_getErrorCode
LZ4_XXH32
LZ4_XXH32_canonicalFromHash
LZ4_XXH32_copyState
LZ4_XXH32_createState
LZ4_XXH32_digest
LZ4_XXH32_freeState
LZ4_XXH32_hashFromCanonical
LZ4_XXH32_reset
LZ4_XXH32_update
LZ4_XXH64
LZ4_XXH64_canonicalFromHash
LZ4_XXH64_copyState
LZ4_XXH64_createState
LZ4_XXH64_digest
LZ4_XXH64_freeState
LZ4_XXH64_hashFromCanonical
LZ4_XXH64_reset
LZ4_XXH64_update
LZ4_XXH_versionNumber
LZ4_compressHC
LZ4_compressHC2
LZ4_compressHC2_continue
LZ4_compressHC2_limitedOutput
LZ4_compressHC2_limitedOutput_continue
LZ4_compressHC2_limitedOutput_withStateHC
LZ4_compressHC2_withStateHC
LZ4_compressHC_continue
LZ4_compressHC_limitedOutput
LZ4_compressHC_limitedOutput_continue
LZ4_compressHC_limitedOutput_withStateHC
LZ4_compressHC_withStateHC
LZ4_compress_fast_force
LZ4_compress_forceExtDict
LZ4_createHC
LZ4_decompress_safe_forceExtDict
LZ4_freeHC
LZ4_resetStreamStateHC
LZ4_sizeofStreamStateHC
LZ4_slideInputBufferHC
LZ4_uncompress
LZ4_uncompress_unknownOutputSize
2017-03-10 23:35:30 +00:00
Dmitry V. Levin
25b2435885
Export deprecated symbols
...
Deprecated symbols are still a part of ABI and have to be exported,
so mark them with LZ4LIB_API attribute.
2017-03-10 23:35:30 +00:00
Dmitry V. Levin
7aeecbff71
Explicitly set visibility of public API functions when gcc is used
...
Windows builds already limit exporting of functions to those marked
with LZ4LIB_API tag. The same behaviour could be achieved on other
platforms when a relatively fresh gcc is used.
This change assigns public visibility to all symbols marked with
LZ4LIB_API tag. When the library is built in -fvisibility=hidden
mode, only these marked symbols will be exported.
2017-03-10 23:35:30 +00:00
remittor
36842ebb19
lz4hc: Fix LZ4HC_compress_hashChain for backward compatibility
2017-03-09 12:19:24 +03:00
remittor
baa155088b
lz4hc: Fix LZ4HC_compress_hashChain for full support destSize variant
2017-03-08 18:49:55 +03:00
remittor
f007153e3f
lz4hc: Add LZ4_compressHC_destSize and LZ4_compress_HC_continue_destSize
2017-03-08 11:11:15 +03:00
remittor
45b592b7ec
lz4hc: Cleanup function LZ4HC_encodeSequence
2017-03-08 00:30:54 +03:00
remittor
534f8fa5d6
lz4hc: Cleanup function LZ4HC_compress_hashChain
2017-03-07 17:11:48 +03:00
Eric Siegerman
eb51b2b8d9
Explicitly create $(DESTDIR)$(LIBDIR)/ at install time
...
This is needed on systems where it isn't the parent of
$(PKGCONFIGDIR), and so doesn't get created implicitly.
2017-02-14 22:12:26 -05:00
Yann Collet
04ec092696
updated comments on block sizes
2017-02-08 11:02:32 -08:00
Przemyslaw Skibinski
8e1fd97d16
lz4frame.h: added Introduction
2017-01-23 17:46:32 +01:00
Przemyslaw Skibinski
9071df0fa5
lz4frame.h: prepared to generate manual
2017-01-23 16:22:00 +01:00
Przemyslaw Skibinski
f9f48f8ed9
lz4.h: improved manual generation
2017-01-23 16:02:51 +01:00
Przemyslaw Skibinski
489d1618c9
added "This Makefile is validated for"
2017-01-19 16:28:08 +01:00
Yann Collet
9683a1ae87
LZ4_MEMORY_USAGE can be modified from compilation command line
2017-01-05 16:50:37 +01:00
Przemyslaw Skibinski
312d88249f
removed nextToUpdateBT
2016-12-28 15:38:59 +01:00
Przemyslaw Skibinski
3d5bb38977
clean logging
2016-12-28 15:37:12 +01:00
Przemyslaw Skibinski
1c80b9af4e
LZ4HC_getSearchNum
2016-12-28 15:18:19 +01:00
Przemyslaw Skibinski
98f9d6c726
improved logging
2016-12-28 14:04:38 +01:00
Przemyslaw Skibinski
12aae846b3
fixed table update in LZ4_loadDictHC
2016-12-28 13:19:11 +01:00
Przemyslaw Skibinski
c8b31263cc
added FUZ_CLEVEL_DEFAULT
2016-12-28 13:08:38 +01:00
Przemyslaw Skibinski
d57ff6456d
changed default PREFIX and MANDIR
2016-12-28 11:27:17 +01:00
Przemyslaw Skibinski
20381a2fce
fixed -BD compression
2016-12-27 15:31:35 +01:00
Przemyslaw Skibinski
e6536faf33
lib\Makefile: fixed INSTALL_DATA
2016-12-27 11:17:35 +01:00
Przemyslaw Skibinski
efaa9b7bc7
Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev
...
# Conflicts:
# lib/Makefile
2016-12-27 10:43:07 +01:00
Przemyslaw Skibinski
b22e2bed5e
BSD: improved "make install"
2016-12-23 10:05:41 +01:00
Przemyslaw Skibinski
ea51ad0cee
Solaris: working "make install"
2016-12-23 00:02:01 +01:00
Yann Collet
19c0f21b00
updated Makefile : lz4 no longer recompiled when already up-to-date
2016-12-22 18:02:09 +01:00
Yann Collet
52cac9a973
updated a few macros names
2016-12-22 11:41:05 +01:00
Yann Collet
70526a11e0
fixed lib/clean
2016-12-21 15:33:53 +01:00
Yann Collet
7cf0bb97b2
LZ4F_compressBound(0) provides upper bound for LZ4F_flush() and LZ4F_compressEnd() [ #290 , suggested by @vtermanis]
2016-12-21 14:18:01 +01:00
Yann Collet
385cb4f539
minor update Makefile
2016-12-21 13:18:02 +01:00
Przemyslaw Skibinski
4f050b68d8
tree update dependent from compression level
2016-12-09 18:17:46 +01:00
Przemyslaw Skibinski
838ed341f9
fullUpdate as a parameter
2016-12-09 17:16:35 +01:00
Przemyslaw Skibinski
b3ecc3e3ec
last match starts at least 12 bytes before end of block
2016-12-09 16:09:38 +01:00
Przemyslaw Skibinski
d694bf9111
faster opt compression
2016-12-09 15:20:32 +01:00
Przemyslaw Skibinski
a22e71d4a9
full binary tree update
2016-12-09 12:37:17 +01:00
Przemyslaw Skibinski
fb6c98c856
slightly improved lz4opt.h
2016-12-08 15:50:45 +01:00
Przemyslaw Skibinski
8c2f23c130
fixed LZ4_STREAMHCSIZE
2016-12-07 16:24:35 +01:00
Przemyslaw Skibinski
76228f064a
LZ4HC_DICTIONARY_LOGSIZE 17
2016-12-07 16:19:10 +01:00
Przemyslaw Skibinski
8bfa42e61e
improved ratio
2016-12-07 15:49:45 +01:00
Przemyslaw Skibinski
1289038240
15-bit LZ4HC_HASH_LOG
2016-12-07 14:31:46 +01:00
Przemyslaw Skibinski
410ba53dbc
improved LZ4HC_BinTree_GetAllMatches
2016-12-07 13:07:39 +01:00
Przemyslaw Skibinski
1833be1cf0
fixed gcc warnings
2016-12-07 12:59:05 +01:00
Przemyslaw Skibinski
f2ebf37bfe
slightly improved ratio
2016-12-07 12:49:38 +01:00
Przemyslaw Skibinski
77b051ed7b
improve code formatting
2016-12-07 12:17:24 +01:00
Przemyslaw Skibinski
e3fee94742
LZ4HC_MAX_CLEVEL = 12
2016-12-07 12:16:33 +01:00
Przemyslaw Skibinski
757ef1d5fc
removed LZ4HC_GetAllMatches
2016-12-07 11:44:17 +01:00
Przemyslaw Skibinski
cfe6a24b08
updated LZ4HC_get_price
2016-12-06 19:42:47 +01:00
Przemyslaw Skibinski
2113ead176
17-bit LZ4HC_MAXD
2016-12-06 19:11:53 +01:00
Przemyslaw Skibinski
c1ef7a177f
introduced LZ4HC_compress_hashChain
2016-12-06 15:21:28 +01:00
Przemyslaw Skibinski
3f430daf7a
added lz4opt.h
2016-12-06 15:20:59 +01:00
Przemyslaw Skibinski
5ae0e789fc
Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev
2016-12-06 13:44:42 +01:00
Yann Collet
5eb547a608
fix #283 : implement LZ4_versionString().
2016-12-04 20:05:36 +01:00
Yann Collet
a9a8dbf7c1
fixed minor display error when using -r
2016-11-28 04:01:02 -08:00
Yann Collet
f4c74e6fac
library release build compatible with environment variable
2016-11-22 11:52:43 -08:00
Yann Collet
7819d58787
new test case with fPIE
2016-11-22 11:18:07 -08:00
Przemyslaw Skibinski
65a542579b
updated README.md
2016-11-22 11:14:11 +01:00
Yann Collet
8b233b228d
added a few dates
2016-11-21 15:51:39 -08:00
Yann Collet
742f2b683e
added doc in code comments
2016-11-21 14:13:00 -08:00
Takayuki MATSUOKA
b4db9d7e35
Add C++14 standard [[deprecated]] attribute
...
See also
For __cplusplus predefined macro, https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html
For [[deprecated]] attribute, https://isocpp.org/wiki/faq/cpp14-language#deprecated-attribute
2016-11-19 22:08:48 +09:00
Yann Collet
19df3029e2
fixed #272 (compilation fails on gcc 4.4), reported by @totaam
2016-11-18 17:56:56 -08:00
Yann Collet
a91983daa0
highly improved speed on -mx32 mode
...
Now -mx32 is fastest mode on x64 CPU
2016-11-18 17:05:06 -08:00
Yann Collet
8e1ea59ad6
attempt to fix sanitize32 package dependency
2016-11-17 18:30:46 -08:00
Yann Collet
1abecbc33c
fix 32-bits mode.
...
Large File support for Mac OS-X in 32-bits mode
Fixed potential undefined behavior
Changed makefile for 32-bits mode
2016-11-17 13:02:06 -08:00
Yann Collet
7fde7438d3
Merge branch 'dev' of github.com:Cyan4973/lz4 into dev
2016-11-16 11:37:05 -08:00
Przemyslaw Skibinski
2dee7bdaf6
include NEWS in lz4_x64.zip and lz4_x86.zip
2016-11-16 11:06:28 +01:00
Przemyslaw Skibinski
632ab3b8d4
updated programs\README.md
2016-11-16 10:53:06 +01:00
Przemyslaw Skibinski
8b48d5e446
updated example\README.md
2016-11-16 09:53:07 +01:00
Przemyslaw Skibinski
11f6217cc2
created dll\example directory
2016-11-16 09:32:26 +01:00
Przemyslaw Skibinski
7b6a9d8638
Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev
2016-11-16 09:01:45 +01:00
Przemyslaw Skibinski
2e10aab20f
MinGW doesn't require the import library at all
2016-11-16 08:59:18 +01:00
Yann Collet
7cecc7b089
fixed a limit case scenario
2016-11-15 17:51:29 -08:00
Yann Collet
d2be69b144
fixed minor coverity warnings
2016-11-15 14:46:57 -08:00
Yann Collet
b44790cf98
Merge pull request #270 from inikep/dev
...
autobuild executables
2016-11-15 11:24:26 -08:00
Przemyslaw Skibinski
e583dd0566
ImageHasSafeExceptionHandlers=false
2016-11-15 16:01:38 +01:00
Przemyslaw Skibinski
eb160e1a2c
appveyor.yml: added liblz4_x86.zip
2016-11-15 14:09:36 +01:00
Przemyslaw Skibinski
45b8623afa
updated lib\dll\README.md
2016-11-15 13:49:20 +01:00
Przemyslaw Skibinski
5625cc21ea
appveyor.yml: generate DLL package
2016-11-15 13:29:33 +01:00
Przemyslaw Skibinski
c093e256d4
added files used by DLL package
2016-11-15 12:57:56 +01:00
Przemyslaw Skibinski
be471c69da
added fullbench-dll.sln that works with gcc/MinGW
2016-11-15 12:57:03 +01:00
Przemyslaw Skibinski
f71340ce1d
DLL dependencies moved to lib/dll/
2016-11-15 11:06:16 +01:00
Yann Collet
923cf4447f
bump version number
2016-11-14 18:09:31 -08:00
Yann Collet
4c5c711b7a
fixed minor conversion warning
2016-11-14 14:53:15 -08:00
Yann Collet
f094f53144
silence a minor msan warning
2016-11-14 14:38:46 -08:00
Yann Collet
0fe5c187a5
fixed minor msan warning
2016-11-14 11:34:10 -08:00
Yann Collet
fa158b4118
fixed nameless union warnings
2016-11-14 10:02:01 -08:00
Yann Collet
84af32d491
Merge branch 'dev' of github.com:Cyan4973/lz4 into dev
2016-11-14 08:52:23 -08:00
Yann Collet
5a5ebeec15
clang and g++ tests restricted to native only on Travis CI Ubuntu v12 environment
2016-11-14 08:51:28 -08:00
Yann Collet
569897dddd
Merge pull request #269 from inikep/dev
...
Dev
2016-11-14 08:27:06 -08:00
Yann Collet
1b24cc1155
fixed conversion warnings
2016-11-14 07:10:31 -08:00
Przemyslaw Skibinski
9ad7508db0
Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev
2016-11-14 11:29:11 +01:00
Yann Collet
84b97f90b8
fuzzer code refactoring
...
fix g++ conversion warning
2016-11-12 17:14:57 -08:00
Yann Collet
94542d8458
made lz4hc explicitly dependent on lz4
2016-11-12 15:50:29 -08:00
Yann Collet
bb97e8a6fd
fixed __GNUC__ macro
2016-11-12 13:30:02 -08:00
Yann Collet
3580d96980
enabled deprecation warnings on remaining obsolete functions
2016-11-12 08:48:42 -08:00
Yann Collet
874f3e095b
update code comments
2016-11-12 07:29:54 -08:00
Yann Collet
e528a82f01
Merge pull request #267 from terrelln/strict-aliasing
...
Expose internal types to remove strict aliasing
2016-11-11 16:54:51 -08:00
Yann Collet
3d456bdf2a
fixed conversion warnings
2016-11-11 15:40:58 -08:00
Yann Collet
bf6dda69e6
updated frametest
2016-11-11 15:11:56 -08:00
Nick Terrell
85aeb0e4bb
Expose internal types to remove strict aliasing
2016-11-11 13:00:02 -08:00
Przemyslaw Skibinski
ec6fb477b2
added visual\README.md
2016-11-11 08:57:46 +01:00
Yann Collet
4f9db1383a
updated xxhash lib
2016-11-10 18:34:49 -08:00
Nick Terrell
5b37837e6e
Fix license and remove references to zstd
2016-11-10 17:27:56 -08:00
Yann Collet
1f246a9899
Fixed #178 fullbench on small input
2016-11-10 15:31:59 -08:00
Przemyslaw Skibinski
52251d9709
Using MinGW+MSYS to create DLL
2016-11-10 18:30:59 +01:00
Przemyslaw Skibinski
72a4a84df7
udated README.md
2016-11-10 17:49:42 +01:00
Przemyslaw Skibinski
2ecce6f151
lz4.h: added Introduction section
2016-11-10 17:22:59 +01:00
Przemyslaw Skibinski
063b4d92e1
fixed make install
2016-11-09 16:23:08 +01:00
Przemyslaw Skibinski
773ae50b47
DLL exports only functions defined in liblz4.def
2016-11-09 16:07:28 +01:00
Przemyslaw Skibinski
ca80a7c8f7
create DLL with MinGW/MSYS
2016-11-09 15:19:29 +01:00
Przemyslaw Skibinski
67fd5dffd9
updated appveyor.yml
2016-11-09 14:05:44 +01:00
Przemyslaw Skibinski
7df658ec1b
removed LZ4_DLL_EXPORT=1 (2)
2016-11-09 12:52:27 +01:00
Przemyslaw Skibinski
fe5148417f
introduced LZ4_COMPILED_AS_DLL
2016-11-09 11:45:55 +01:00
Przemyslaw Skibinski
0a22bf7d6e
err0r(LZ4F_errorCodes code) uses ptrdiff_t
2016-11-08 11:47:03 +01:00
Przemyslaw Skibinski
d06ab4f415
test powerpc64
2016-11-08 11:16:16 +01:00
Yann Collet
c7ab95faa5
slightly improved HC compression ratio
2016-11-07 19:32:24 -08:00
Yann Collet
e9089bcbe4
small compression ratio and speed improvement on small files
2016-11-07 17:31:38 -08:00
Yann Collet
f6a7c6b578
Merge branch 'dev' of github.com:Cyan4973/lz4 into dev
2016-11-07 10:31:43 -08:00
Przemyslaw Skibinski
d61bb74f20
updated declaration of LZ4F_freeDecompressionContext
2016-11-07 14:14:42 +01:00
Przemyslaw Skibinski
58ead8dd27
fixed appveyor.yml
2016-11-07 13:00:08 +01:00
Nick Terrell
920bf21714
Fix LZ4_decompress_fast_continue() bug
...
It specified the external dictionary location incorrectly.
Add tests that expose this bug with both normal compilation and ASAN.
2016-11-04 20:01:23 -07:00
Yann Collet
207f478bab
minor refactor
2016-11-04 19:04:32 -07:00
Yann Collet
96565816bd
restricted deprecation warning to fairly recent gcc versions (>=6.0)
2016-11-04 17:11:06 -07:00
Yann Collet
eaad740ac7
lz4frame obsolete enum should trigger deprecation warnings (on supported compilers)
2016-11-04 16:58:34 -07:00
Yann Collet
079d5dd54b
removed support for old error code enums from lz4frame_static.h, to free up namespace.
...
note : lz4frame_static.h does not guaranteed API stability.
note 2 : the macro to enable old error code enums is still present. Just needs to comment one line to re-enable them.
2016-11-04 16:29:43 -07:00
Nick Terrell
f30c56c083
Quiet gcc-4.6.3 narrowing warning
2016-11-04 12:34:28 -07:00
Yann Collet
f878c08b76
better correctness on big-endian 64-bits platforms
2016-11-04 07:24:21 -07:00
Yann Collet
26dec498cf
small compression speed improvement on 64-bits systems
2016-11-04 07:18:03 -07:00
Yann Collet
4c6610709e
minor code refactoring
2016-11-03 20:32:51 -07:00
Yann Collet
eda8c4eb1c
fix #198 : no longer requires to restart streaming decompression from where it stopped.
...
It permits relocating remaining data into another memory space.
Still, the same content must be presented.
2016-11-03 18:46:07 -07:00
Yann Collet
4791cda04a
fixed strict warnings
2016-11-03 17:31:41 -07:00
Yann Collet
258a5e7fa4
updated comments
2016-11-03 17:14:25 -07:00
Przemyslaw Skibinski
84cedb4632
updated links to LZ4 repository
2016-11-03 15:12:57 +01:00
Przemyslaw Skibinski
88cef262ec
documentation moved to doc/
2016-11-03 13:25:20 +01:00
Yann Collet
67500142c1
Clarified license ( #115 , #244 )
2016-11-01 19:14:04 -07:00
Yann Collet
7e112cfa5c
fixes static compilation under Windows ( #246 )
2016-10-21 09:49:30 -07:00
Yann Collet
52cdb4a5f4
Merge pull request #241 from vapier/dev
...
add a flag to disable static libs
2016-09-23 15:59:39 +02:00
Mike Frysinger
43b631223b
add a flag to disable static libs
2016-09-22 23:59:02 -04:00
Kouhei Sutou
59771f41cd
Use different prefix for each file to avoid conflict
2016-09-23 10:38:44 +09:00
Kouhei Sutou
012c66536c
Add LZ4LIB_API
...
It's based on Zstandard's ZSTDLIB_API.
See also: https://github.com/Cyan4973/lz4/issues/216#issuecomment-226245432
Deprecated functions aren't LZ4LIB_API targets. Because we don't need to
export deprecated functions from now.
There are same LZ4LIB_API definitions in each header files instead of
including a common header file because LZ4_DEPRECATED is defined so.
2016-09-23 00:39:45 +09:00
Yann Collet
3b9439ccd0
updated uninstall
2016-09-17 11:59:13 +02:00
Yann Collet
8eae1320c2
Merge pull request #236 from inikep/dev
...
fix bug #232 at https://github.com/Cyan4973/lz4/issues/232
2016-09-06 16:49:34 +02:00
Yann Collet
33993542af
removed test artefacts
2016-09-06 16:46:52 +02:00
inikep
3eb143fffa
fix bug #232 at https://github.com/Cyan4973/lz4/issues/232
2016-09-06 10:36:16 +02:00
Yann Collet
28f98647e3
lz4 version source from lz4.h
2016-09-02 22:04:16 -07:00
Yann Collet
64f556e610
lz4cli version number from lz4.h
2016-09-02 19:32:06 -07:00
Yann Collet
5871585b6a
coding style change
2016-09-02 19:06:01 -07:00
inikep
2cf32ef0f1
-b# and -e# options from zstd
2016-09-02 22:59:18 +02:00
Georg Sauthoff
681d5010d5
use gnu c99 to get both c99 and POSIX
...
when compiling with gcc
fixes fileno() implicitly defined on Linx and compile error on Solaris 10
2016-08-27 15:24:50 +02:00
Yann Collet
5bd3eaa481
minor comments
2016-08-21 00:08:38 +02:00
Yann Collet
9578ff539d
minor refactor
2016-08-20 23:59:45 +02:00
Yann Collet
a7672dc4f9
minor decompression speed gains
2016-08-20 23:52:20 +02:00
Yann Collet
63d22e7a19
minor comments clarifications
2016-08-20 23:22:29 +02:00
Yann Collet
74e6afc5dc
minor comments clarification
2016-08-11 18:55:42 +02:00
Yann Collet
2ac9ecec68
Fixed #157 : LZ4F_getFrameInfo() fails on valid null-content frame
2016-08-11 14:55:39 +02:00
Ben Wiederhake
d3e2d80266
Use https wherever possible
2016-07-08 00:46:02 +02:00
Ben Wiederhake
6540030033
Use correct 'repository' hostname
2016-07-08 00:45:18 +02:00
Yann Collet
91cce757f5
Updated xxhash library to v0.6.1
2016-06-29 21:48:27 +02:00
Yann Collet
5540f4f93e
stronger compilation flags
2016-06-29 20:25:10 +02:00
Yann Collet
19e585cc46
modified : some more deprecated functions from lz4hc.h generate warnings
2016-06-29 18:18:34 +02:00
Yann Collet
6b1600f41e
changed : default benchmark LZ4_decompress_safe()
2016-06-29 17:48:28 +02:00
Yann Collet
6923f3e230
Minor refactoring (code style)
2016-06-29 17:12:24 +02:00
Yann Collet
410ec81543
Fixed : alignment warning
2016-06-29 17:02:09 +02:00
Yann Collet
bc342ab94c
minor refactoring
2016-06-29 16:01:24 +02:00
Yann Collet
c8a573d32c
very minor decompression speed gain
2016-06-29 15:04:19 +02:00
Yann Collet
e27e7316dd
minor code refactoring
2016-06-29 14:54:07 +02:00
Yann Collet
8938e10742
minor compression speed improvement
2016-06-29 14:07:54 +02:00
Yann Collet
c77c0c1086
minor refactoring
2016-06-29 13:21:23 +02:00
Yann Collet
3c03326004
minor refactoring (coding style)
2016-06-29 12:54:23 +02:00
Martin Waschbüsch
7bfbccb972
Add FreeBSD to install targets
...
Add FreeBSD to install targets
2016-05-17 07:47:03 +02:00
Irwan Djajadi
bc70a4b72e
fixed non-C99 compilers
2016-04-19 15:06:15 -05:00
Irwan Djajadi
10e3eecc56
fixed non-C99 compiler
2016-04-19 15:01:35 -05:00
Irwan Djajadi
973baa2c19
Merge branch 'heapmode_alloc_failure_fix' into dev
2016-04-19 08:22:56 -05:00
Irwan Djajadi
3e5bb67537
alloc failure fix
2016-04-18 15:51:32 -05:00
John Zhuge
cf6652f9b9
lz4cli: print library version
2016-04-01 07:07:25 -07:00
Julius Werner
dc868cd5b1
Allow for safe in-place decoding
...
Add a check to allow safe "in-place" decoding (meaning that the
beginning of the source buffer partially overlaps the end of the
destination buffer). This is usually possible as long as the output
stops at least 15 bytes before the end of the input buffer (7 to account
for the extra spill from LZ4_wildCopy, 4 for a possible block checksum,
and 4 for the terminating block header), but in some pathological edge
cases it could be possible for the output stream to overwrite a byte in
the input stream before it gets decoded. With this patch the decoder
will reliably detect those cases and return a decoding error.
Signed-off-by: Julius Werner <jwerner@chromium.org>
2016-02-12 22:52:51 -08:00
Julius Werner
4fcb2e17fb
Remove whitespace from ends of lines
...
I'm trying to import LZ4 code into a project with strict linting
requirements. This will make that easier.
Signed-off-by: Julius Werner <jwerner@chromium.org>
2016-02-12 22:49:52 -08:00
Yann Collet
2c80138121
heapmode macro option for lz4hc
2015-10-21 15:00:48 +01:00
Yann Collet
ff3324b8d5
Fix : compiler-independent macro to remove deprecation warnings
2015-10-21 12:58:06 +01:00
Yann Collet
cd18ed3086
create link to dynamic library without using cp -a
( #147 )
2015-09-01 16:55:55 +01:00
Yann Collet
fb6fece770
Updated Makefile and .travis
2015-09-01 15:59:24 +01:00
Yann Collet
9aa5504f0c
New unalign access method
2015-08-19 18:16:17 +01:00
Yann Collet
e5aee601ef
updated xxhash
2015-08-19 17:54:19 +01:00
Yann Collet
d15ac1f1a7
Slightly improved compression speed on ARMv6
2015-08-16 02:33:57 +01:00
Yann Collet
0f2bf0c54e
Improved performance on ARMv6
2015-08-16 01:54:55 +01:00
Yann Collet
4b4384772a
Updated xxhash to r41
2015-08-16 00:55:32 +01:00
Yann Collet
60119e2585
Makefile : generates *.o for faster processing
2015-08-15 17:21:45 +01:00
Yann Collet
9517bd9234
minor simplification lz4_readarch()
2015-08-06 03:49:29 +01:00
Yann Collet
00eedb37d1
minor refactor
2015-07-16 09:38:10 +01:00
Yann Collet
3e579afa6d
Slightly improved decompression speed
...
Slightly decreased decompression stack usage in 64-bits mode
2015-07-16 09:03:55 +01:00
Yann Collet
795a2cdb1b
sligthly improved decompression speed
2015-07-16 08:55:48 +01:00
Yann Collet
a3c6daba6e
liblz4 : Moved XXH_NAMESPACE to CPPFLAGS
2015-07-02 10:29:24 -08:00
Yann Collet
dfabec2d18
Fixed a few minor visual analyzer warnings
2015-06-29 00:31:41 -08:00
Yann Collet
aa1350e139
lz4hc : added one malloc test
2015-06-28 19:51:11 -08:00
Yann Collet
0cc38f9ebc
Updated lib readme
2015-06-27 14:15:45 -08:00
Yann Collet
192ee724a3
Added namespace ability to xxhash
2015-06-27 12:43:28 -08:00
Yann Collet
c04df7e1b5
Changed : static library is no longer compiled with -fPIC by default (this option can still be added on the command line) See #53
2015-06-27 01:30:31 -08:00
Yann Collet
b17d3220d2
Minor lib readme update
2015-06-18 06:38:19 -08:00
Yann Collet
91c1b9a682
Performance fix : big compression speed boost for clang (+30%)
2015-05-21 01:17:56 +01:00
Yann Collet
05c3f66bb8
Updated a few comments
2015-05-12 10:10:20 +01:00
Yann Collet
672bfdebd0
Updated comments
2015-05-06 20:23:06 +01:00
Yann Collet
b4ef93a837
Fixed typo
2015-05-06 10:26:59 +01:00
Yann Collet
efbebd2a99
Added : LZ4_compress_destSize()
2015-05-06 02:29:04 +01:00
Yann Collet
1c3e633c48
Added compilation flag -Wcast-qual
2015-05-06 01:58:24 +01:00
Yann Collet
e05088d0eb
Updated lz4hc API
2015-05-03 20:57:21 +01:00
Yann Collet
b4348a4718
Fixed minor Visual warning
2015-05-03 18:06:01 +01:00
Yann Collet
1b17bf2ab8
New lz4 API, using LZ4_compress_fast()
2015-05-03 17:57:46 +01:00
Yann Collet
791512cfdd
Fixed bug 9318
2015-05-02 19:10:28 +01:00
Yann Collet
2a974d73c3
refactored lz4hc
2015-05-02 15:44:43 +01:00
Yann Collet
ad2dd6df3f
moved lz4frame context types to incomplete typedef
2015-04-27 02:31:56 +01:00
Yann Collet
c9cbb8fc06
Increased aligment requirement for lz4frame context pointer
2015-04-24 14:28:06 +01:00
Yann Collet
ef55dfb000
Modified lz4frame context typedef, to enforce stricter alignment condition
2015-04-24 13:26:53 +01:00
Yann Collet
d6dc0a410d
streaming API : Improved ring buffer management
2015-04-24 10:15:12 +01:00
Yann Collet
9c6fb8b160
Added LZ4_compress_fast_extState()
2015-04-23 07:46:35 +01:00
Yann Collet
b05d3d71a6
Frame content size disabled by default when using LZ4F_compressFrame(), to be in better coherence with the advanced API LZ4F_compress_update()
2015-04-22 00:57:39 +01:00
Yann Collet
b805d581b9
Removed obsolete functions from lz4 cli
2015-04-21 19:07:31 +01:00
Yann Collet
f11afafe23
Removed LZ4_compress() (obsolete) from lz4
2015-04-21 18:31:35 +01:00
Yann Collet
72e679438f
Updated LZ4F_freeDecompressionContext(), to provide stage hint as result
2015-04-20 12:23:33 +01:00
Yann Collet
a01e10dbdc
Changed LZ4F compressionLevel from unsigned to signed, in anticipation for LZ4_compress_fast() integration.
2015-04-20 12:12:02 +01:00
Yann Collet
409f816267
Updated LZ4F_getFrameInfo() behavior, related to uncomplete frame header decoding attempts
2015-04-19 15:23:53 +01:00
Yann Collet
2cf8a19e9d
minor header refactoring
2015-04-16 09:57:46 +01:00
Takayuki MATSUOKA
d153aaa1c2
Add LZ4F_OBSOLETE_ENUM() to describe obsolete enums
...
- Add LZ4F_OBSOLETE_ENUM() to describe obsolete enums
- Add compatible typedefs for obsolete enum types
- Remove constant macros
2015-04-16 12:42:26 +09:00
Yann Collet
4e574e7395
Updated lz4frame error names
2015-04-15 10:34:08 +01:00
Yann Collet
d37926b0b5
Merge pull request #95 from t-mat/issue/90
...
Modified lz4frame enum, by @t-mat
2015-04-15 10:39:38 +02:00
Takayuki MATSUOKA
3d46d4b144
Fix LZ4_DEPRECATED() in lz4hc.h
2015-04-15 14:19:17 +09:00
Takayuki MATSUOKA
585bab8121
Issue#90 : Change old enum to macro to maximize compatibility
2015-04-15 06:45:25 +09:00
Takayuki MATSUOKA
081bcca33b
Issue#90 : Add LZ4F_ prefix
...
- Add LZ4F_ prefix to LZ4 frame related enums.
- Also add conditional macro LZ4F_DISABLE_OLD_ENUMS for testing and users who prefer strict prefixes.
2015-04-15 06:45:24 +09:00
Takayuki MATSUOKA
e1283c7991
Fix LZ4_DEPRECATED() for older/non-gcc/clang/MSVC compilers
2015-04-15 06:39:05 +09:00
Takayuki MATSUOKA
d7298d2059
Replace GCC_VERSION with LZ4_GCC_VERSION
2015-04-15 06:39:04 +09:00
Charles Allen
b664a72145
Revert "Revert "Add more descriptive frame errors""
...
This reverts commit 5a66527084
.
2015-04-14 13:33:43 -07:00
Yann Collet
05a46fc59a
Changes LZ4F_compressBound() definition using NULL prefsPtr to cover worst case instead of default.
2015-04-14 18:51:36 +01:00
Yann Collet
2852b9e439
Fixed issue #84
2015-04-12 15:17:10 +01:00
Yann Collet
138673df5e
fixed minor g++ warning
2015-04-12 09:37:34 +01:00
Yann Collet
cc8d617ed0
Merge pull request #82 from t-mat/add-lz4-prefix
...
Add LZ4 prefix to deprecation macros
2015-04-12 10:34:44 +02:00
Yann Collet
81fdd9df23
Fixed a few Valgrind warnings
2015-04-12 09:29:52 +01:00
Takayuki MATSUOKA
ad86910b1b
Add LZ4 prefix to deprecation macros
...
Replace the following macros:
- "_DEPRECATE_WARNING_DEFBLOCK" to "LZ4_DEPRECATE_WARNING_DEFBLOCK"
- "DEPRECATED" to "LZ4_DEPRECATED"
2015-04-12 17:28:53 +09:00
Yann Collet
62ed153195
Fixed : a few minor coverity warnings
2015-04-12 08:21:35 +01:00
Yann Collet
9443f3d924
Extended obsolete warning messages to lz4hc
2015-04-11 19:12:03 +01:00
Yann Collet
973e385fa3
Implemented obsolete warning message
2015-04-11 18:59:22 +01:00
Yann Collet
be9d248851
Update lz4hc API : LZ4_compressHC_safe()
2015-04-11 12:28:09 +01:00
Yann Collet
a07db74d24
Clarified lz4frame.h inline doc
2015-04-11 10:46:16 +01:00
Yann Collet
f344fbd3ca
Fixed a few warnings from -fsanitize=undefined
2015-04-09 22:59:07 +01:00
Yann Collet
2f8a4c32f9
New LZ4_compress_safe() API
2015-04-09 13:34:38 +01:00
Yann Collet
78d2dfd427
fullbench : tests of _limitedOutput variants intentionnally provides less memory space than safe (LZ4_compressBound())
2015-04-01 18:21:03 +01:00
Yann Collet
ef7cd83271
Fixed issue 160, reported by Eric Berge
2015-04-01 17:30:36 +01:00
Yann Collet
28e237e954
simplified LZ4_compress_limitedOutput()
2015-04-01 15:53:08 +01:00
Yann Collet
76a03c1035
simplified LZ4_compress_withState()
2015-04-01 14:59:42 +01:00
Yann Collet
6625068902
simplified LZ4_compress()
2015-04-01 14:48:24 +01:00
Yann Collet
a761546b1b
Fix : minor warning under Visual
2015-03-31 18:52:52 +01:00
Yann Collet
3bba55c741
Fixed : Windows compilation
...
Added : Appveyor badge
2015-03-31 14:47:23 +01:00
Yann Collet
5b9fb69715
minor tweak
2015-03-30 22:39:08 +01:00
Yann Collet
4c227a487e
Added LZ4_compress_fast()
2015-03-30 21:32:25 +01:00
Yann Collet
6c69dc176c
faster compression in 64 bits mode
2015-03-30 18:34:15 +01:00
Yann Collet
eeb8bea34c
Updated comments on LZ4F_getFrameInfo()
2015-03-30 16:36:57 +01:00
Yann Collet
002ec60f0f
restored lz4hc compression ratio
2015-03-30 15:57:26 +01:00
Yann Collet
8cb06d5b99
lz4frame validates contentSize during decompression
2015-03-29 13:28:32 +01:00
Yann Collet
d5da787c1b
Changed struct member to contentSize
2015-03-29 11:20:09 +01:00
Yann Collet
a357f434f0
Fixed cast-align warnings on 32-bits
2015-03-25 18:06:40 +01:00
Yann Collet
7cf4e5c941
Updates tests & Man pages
2015-03-22 13:42:00 +01:00
Yann Collet
86715b2541
Some more tests related to frame content size
2015-03-19 01:05:59 +01:00
Yann Collet
7ee725645b
frame content size support
2015-03-18 21:38:27 +01:00
Yann Collet
7d87d43e61
Updated lz4io sparse file support (alignment properties)
2015-03-17 18:02:01 +01:00
Yann Collet
b54d256f56
minor lz4frame optimisation (no more malloc() on using LZ4F_compressFrame() in fast mode)
2015-03-16 23:22:59 +01:00
Yann Collet
da9402c6f5
minor lz4frame refactoring
2015-03-16 22:35:02 +01:00
Yann Collet
8edb7f1406
Added : Readme into lib directory, to explain what does each file
2015-03-16 21:48:40 +01:00
Yann Collet
2a02455fdf
minor refactoring
2015-03-16 19:19:39 +01:00
Yann Collet
3a6832497b
skippable frames support
2015-03-16 17:52:14 +01:00
Yann Collet
2b55752a5c
changed "make install" default install directory to /usr/local
2015-03-15 20:40:38 +01:00
Yann Collet
bbcfe2144d
Added : clang test
2015-03-15 14:19:47 +01:00
Yann Collet
45b0642bf5
scan-build tests
2015-03-15 01:42:27 +01:00
Yann Collet
45a357fd17
Improved sparse file support
2015-03-13 02:24:08 +01:00
Yann Collet
e38c268b5a
Fixed minor g++ warnings
2015-03-11 20:11:14 +01:00
Yann Collet
e3f33d2579
Fixed minor warnings
2015-03-11 18:38:44 +01:00
Yann Collet
ceec6fa849
g++ compatibility
2015-03-10 16:57:42 +01:00
Yann Collet
e1d9b593e1
Fixed : static library (x64 binary)
2015-03-08 12:50:40 +01:00
Yann Collet
32a85fc76d
NetBSD compatibility ( #48 )
2015-03-07 19:30:45 +01:00
Yann Collet
8f4e201a06
Fix : lz4frame.h within uninstaller
2015-01-21 18:03:17 +01:00
Yann Collet
f68eead36c
Added : -pedantic compilation option
2014-12-17 12:32:49 +01:00
Yann Collet
0569a68edd
C90 compatibility
2014-12-17 12:20:17 +01:00
Yann Collet
8a9fb8cf32
Fixed : older compiler don't like nameless unions, reported by Cheyi Lin
2014-12-16 22:03:16 +01:00
Yann Collet
95cc6cef64
Fixed : bug within LZ4 HC streaming mode, reported by James Boyle
2014-12-16 02:13:19 +01:00
Yann Collet
7a8cd69960
Fixed : GCC 4.9 bug on highest performance settings, reported by Greg Slazinski
2014-12-14 14:29:15 +01:00
Yann Collet
12adbcaebc
Updated comments
2014-12-13 17:08:51 +01:00
Yann Collet
daa320f3f7
New : lz4frame integrated into liblz4 (v1.5.0)
2014-12-13 15:05:46 +01:00
Yann Collet
e68d7dcf22
Fixed : LZ4_compress_limitedOutput() bug, as reported by Christopher Speller
2014-12-10 17:58:15 +01:00
Yann Collet
3477cbac73
stronger tests for LZ4_compress_limitedOutput()
2014-12-10 09:05:44 +01:00
Yann Collet
fc4a6153b0
fixed : pkg version
2014-12-09 09:47:54 +01:00
Yann Collet
c5decf7562
minor refactoring
2014-12-06 17:10:54 +01:00
Yann Collet
b827ecf728
Clarified a few comments
2014-12-03 23:19:11 +01:00
Yann Collet
65ee6b09c4
Fixed : deprecated function LZ4_slideInputBufferHC()
2014-12-03 19:17:10 +01:00
Yann Collet
118296aeb0
variable ref renamed
2014-12-02 23:57:15 +01:00
Yann Collet
67c25a5c1b
lz4frame.h : clarified a few comments
2014-12-01 22:00:07 +01:00
Yann Collet
bf79270ced
2014-11-30 23:34:29 +01:00
Yann Collet
d008c87151
New directory structure : library source files into /lib directory
2014-11-30 23:32:12 +01:00