Commit Graph

86 Commits

Author SHA1 Message Date
yann.collet.73@gmail.com
26b82f35d8 Improved endianess detection
git-svn-id: https://lz4.googlecode.com/svn/trunk@86 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-12-21 16:49:17 +00:00
yann.collet.73@gmail.com
024f83c1e5 Improved decoding speed, thanks to several contributions from Ludvig Strigeus (issues 49, 50 & 54)
Removed unnecessary assignment within LZ4_uncompress_unknownSize() (reported by Shivram)

git-svn-id: https://lz4.googlecode.com/svn/trunk@85 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-12-11 01:38:32 +00:00
yann.collet.73@gmail.com
ffb27d4eca LZ4 HC : extended detection window. Thanks to Adrien Grand.
Fuzzer : more tests cases
lz4demo : detect write errors. Thanks to Dima Tisnek
bench.c : compatibility with Solaris 64. Thanks to Thorbjørn Willoch
LZ4_compressBound() : now both in inline function and macro format. Thanks to Jacob Gorm Hansen

git-svn-id: https://lz4.googlecode.com/svn/trunk@84 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-11-30 13:23:36 +00:00
yann.collet.73@gmail.com
43a03b41b2 Corrected a bug into LZ4_uncompress_unknownOutputSize() introduced in r82
git-svn-id: https://lz4.googlecode.com/svn/trunk@83 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-11-05 16:55:52 +00:00
yann.collet.73@gmail.com
5cc3efc2a5 Corrected issue 38 : bench.c compilation for Sun Solaris 32 bits
Corrected issue 40 : Detect early ending of compressed stream. Thanks Adrian Grand.
Corrected issue 41 : minor comment editing on lz4.h

git-svn-id: https://lz4.googlecode.com/svn/trunk@82 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-11-03 21:04:19 +00:00
yann.collet.73@gmail.com
206f5f48cf Corrected issue 39 : bench.c for NetBSD. Thanks to Thomas Klausner.
git-svn-id: https://lz4.googlecode.com/svn/trunk@81 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-10-27 18:26:58 +00:00
yann.collet.73@gmail.com
7185dc04a6 Corrected Issue 34 (restrict)
minor macro renaming (fuzzer.c)

git-svn-id: https://lz4.googlecode.com/svn/trunk@80 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-10-26 12:35:31 +00:00
yann.collet.73@gmail.com
b1e707f772 - Corrected issue 31 : LZ4 correctly accepts compressing data when the output buffer has exactly the required size (it was a bit over-cautious in previous version).
- Added : a fuzzer tool
Thanks to Andrew Mahone, for contribution on both points


git-svn-id: https://lz4.googlecode.com/svn/trunk@79 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-10-24 12:59:19 +00:00
yann.collet.73@gmail.com
66be4025df Correct issue 36 on LZ4_uncompress_unknownOutputSize(). Thanks to Clayton Stangeland and Maciej Adamczyk for notifying.
Converted tabs to space

git-svn-id: https://lz4.googlecode.com/svn/trunk@78 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-10-16 21:50:15 +00:00
yann.collet.73@gmail.com
9577c977a9 Correction : LZ4_compress_limitedOutput() write too far error
git-svn-id: https://lz4.googlecode.com/svn/trunk@77 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-08-22 15:59:39 +00:00
yann.collet.73@gmail.com
f4e48fe61d changed some macro names in lz4hc to avoid duplicate definition on NetBSD
git-svn-id: https://lz4.googlecode.com/svn/trunk@76 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-08-14 16:27:47 +00:00
yann.collet.73@gmail.com
6078c33f8c Fixed Visual 2005 issues (warning/linking)
git-svn-id: https://lz4.googlecode.com/svn/trunk@75 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-08-13 07:30:58 +00:00
yann.collet.73@gmail.com
4e11dc62ba LZ4.c : changed inline to "static inline" to comply with limitations from GCC/LLVM combination under OS-X.
git-svn-id: https://lz4.googlecode.com/svn/trunk@74 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-08-08 13:02:45 +00:00
yann.collet.73@gmail.com
19a078b132 Improved speed under Visual
git-svn-id: https://lz4.googlecode.com/svn/trunk@73 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-08-03 14:33:12 +00:00
yann.collet.73@gmail.com
89921dd39e Fixed : small compression speed hit on GCC v4.5 introduced by r71
git-svn-id: https://lz4.googlecode.com/svn/trunk@72 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-08-01 23:51:55 +00:00
yann.collet.73@gmail.com
84004b9015 Added : function LZ4_compress_limitedOutput()
Removed : functions with explicit *ctx management (LZ4_compressCtx & LZ4_compress64kCtx). Functions are still present in the .c
Changed : LZ4_compressBound() now a macro

git-svn-id: https://lz4.googlecode.com/svn/trunk@71 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-07-28 13:32:30 +00:00
yann.collet.73@gmail.com
cfbace25d7 lz4.c : changed a tuning parameter name to MEMORY_USAGE, to better reflect its impact
Makefile : default produces native binary, all produce native & 32-bits binaries


git-svn-id: https://lz4.googlecode.com/svn/trunk@70 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-07-24 17:12:23 +00:00
yann.collet.73@gmail.com
d9ef5117f6 Changed Makefile default setting to generate only native binary.
The 32-bits version can still be generated (on 64-bits systems) using :
make lz4demo32


git-svn-id: https://lz4.googlecode.com/svn/trunk@69 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-07-18 19:46:57 +00:00
yann.collet.73@gmail.com
b33dcade4e git-svn-id: https://lz4.googlecode.com/svn/trunk@68 650e7d94-2a16-8b24-b05c-7c0b3f6821cd 2012-06-16 00:04:09 +00:00
yann.collet.73@gmail.com
ebc041cb51 Update CMake file to handle lz4hc. Thanks to Mark Wotton for notification and correction
git-svn-id: https://lz4.googlecode.com/svn/trunk@67 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-06-08 09:36:33 +00:00
yann.collet.73@gmail.com
8dfb9d6159 Added : LZ4 HC : Now integrated into main trunk.
LZ4_HC license moved to BSD

git-svn-id: https://lz4.googlecode.com/svn/trunk@66 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-05-13 17:59:10 +00:00
yann.collet.73@gmail.com
3bc3a6afc3 Added : LZ4Demo : can handle appended compressed streams.
git-svn-id: https://lz4.googlecode.com/svn/trunk@65 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-05-12 19:14:43 +00:00
yann.collet.73@gmail.com
d8184bf7ef minor : Force Software-bit-count for WinCE environment under Visual. Thanks Bayang for Reporting.
git-svn-id: https://lz4.googlecode.com/svn/trunk@64 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-05-09 23:49:41 +00:00
yann.collet.73@gmail.com
ae9eead4ae Corrected : linking stage of Visual 2005 in Debug mode (issue 16)
Minor changes in comments

git-svn-id: https://lz4.googlecode.com/svn/trunk@63 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-05-07 23:10:02 +00:00
yann.collet.73@gmail.com
6cedd1f252 Added : cmake configuration file, from Dmitry Cherepanov
git-svn-id: https://lz4.googlecode.com/svn/trunk@62 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-04-08 15:18:12 +00:00
yann.collet.73@gmail.com
ee1c281947 Corrected : minor : changed a macro name to avoid duplicate within NetBSD. Thanks Gray for reporting (Issue 15)
git-svn-id: https://lz4.googlecode.com/svn/trunk@61 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-04-03 19:34:15 +00:00
yann.collet.73@gmail.com
fd281f8e5d Added : lz4demo : software swap32 backend for compilers which do not support hardware ones. Thanks Dmitry Cherepanov for contribution
git-svn-id: https://lz4.googlecode.com/svn/trunk@60 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-03-16 19:50:58 +00:00
yann.collet.73@gmail.com
ad59ba1cfa minor code refactoring, mostly around __builtin_expect
git-svn-id: https://lz4.googlecode.com/svn/trunk@59 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-03-09 21:46:59 +00:00
yann.collet.73@gmail.com
89767cc280 Small speed improvement (compression & decompression), Thanks Maciej Adamczyk for suggestion
Fixed : LZ4_uncompress_unknownOutputSize(), now protected against a malicious attack type, where a crafted input deliberately attempts to make it read outside of input buffer. Thanks Steinar H. Gunderson for report.

git-svn-id: https://lz4.googlecode.com/svn/trunk@58 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-03-01 15:19:08 +00:00
yann.collet.73@gmail.com
3430ee1bc0 Added : format description file
Added : new tuning parameter : LZ4_COMPRESSMIN. Thanks to Maciej Adamczyk for suggestion.
changed : macro for bswap16, in order to help GCC intrinsic detection. Thank to Erik Andersen for suggestion.

git-svn-id: https://lz4.googlecode.com/svn/trunk@57 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-02-25 19:13:16 +00:00
yann.collet.73@gmail.com
ecbce64ac9 Corrected : default to Software Bit Count for GCC earlier than 3.4. Thanks to Gray.
Corrected : ARM compilation under Visual Studio : now generates cautious code, like GCC, to ensure compatibility with strict-align CPUs. Thanks to Joe WoodBury.
Minor : bench.c : Hash verification changed to MurmurHash3A
Minor : bench.c : selectable block size

git-svn-id: https://lz4.googlecode.com/svn/trunk@56 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-02-20 20:53:49 +00:00
yann.collet.73@gmail.com
4045a42bb1 Added : LZ4_compressBound() function
corrected : bench.c now correctly detects file size on a wider ranger of compilers; thanks to Erik Andersen
minor : removed warnings on undefined (-Wundef on gcc), thanks David Sterba for suggestion


git-svn-id: https://lz4.googlecode.com/svn/trunk@55 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-02-16 18:39:50 +00:00
yann.collet.73@gmail.com
7b6ba0421d Minor comments refactoring, for better clarity
git-svn-id: https://lz4.googlecode.com/svn/trunk@54 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-02-06 21:21:48 +00:00
yann.collet.73@gmail.com
9485884eb9 minor interface modification : source pointers are now (const char*)
git-svn-id: https://lz4.googlecode.com/svn/trunk@53 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-02-01 20:16:10 +00:00
yann.collet.73@gmail.com
2327aa404e Better detection of Big-Endian and PowerPC CPU
LZ4Demo : correction : produces compatible streams on both big-endian and little-endian systems

git-svn-id: https://lz4.googlecode.com/svn/trunk@52 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-02-01 04:19:38 +00:00
yann.collet.73@gmail.com
572cab747f Corrected a bug in the decoder in 64-bit mode
git-svn-id: https://lz4.googlecode.com/svn/trunk@51 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-16 22:26:03 +00:00
yann.collet.73@gmail.com
93577f8ce6 Improved compression speed for 64-bit CPUs
git-svn-id: https://lz4.googlecode.com/svn/trunk@50 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-14 17:17:12 +00:00
yann.collet.73@gmail.com
868c459f23 Improved compression speed for 64-bit CPU
git-svn-id: https://lz4.googlecode.com/svn/trunk@49 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-13 19:44:18 +00:00
yann.collet.73@gmail.com
99b3294fc2 Improved compression speed for big-endian CPU
git-svn-id: https://lz4.googlecode.com/svn/trunk@48 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-10 20:03:01 +00:00
yann.collet.73@gmail.com
4fa4221c6e Decompression speed improved in 64-bit mode
Decoding functions are now also immune to out-of-buffer read errors (note : they were already protected against malicious out-of-buffer write attacks)

git-svn-id: https://lz4.googlecode.com/svn/trunk@47 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-09 23:21:05 +00:00
yann.collet.73@gmail.com
97abf01348 Added : benchmark function within command-line utility
git-svn-id: https://lz4.googlecode.com/svn/trunk@46 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-08 02:45:32 +00:00
yann.collet.73@gmail.com
aac2572351 Improved compression and decompression speed on 64-bits CPU
git-svn-id: https://lz4.googlecode.com/svn/trunk@45 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-07 20:26:15 +00:00
yann.collet.73@gmail.com
f20be40d3e Improved compression speed. Thanks to David Sterba for suggestion.
Compression ratio improvements in "small packet" mode (<64KB).

git-svn-id: https://lz4.googlecode.com/svn/trunk@44 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2012-01-04 13:08:10 +00:00
yann.collet.73@gmail.com
8ee579983a Endianess correction
git-svn-id: https://lz4.googlecode.com/svn/trunk@43 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-12-16 23:41:46 +00:00
yann.collet.73@gmail.com
39630716d7 Endianess correction
git-svn-id: https://lz4.googlecode.com/svn/trunk@42 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-12-09 13:59:59 +00:00
yann.collet.73@gmail.com
bf12ca9a1e Slightly improved compression speed
git-svn-id: https://lz4.googlecode.com/svn/trunk@41 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-11-21 23:56:21 +00:00
yann.collet.73@gmail.com
70ba2c463f Better compliance with C99 and non-C99 compilators
git-svn-id: https://lz4.googlecode.com/svn/trunk@40 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-11-19 21:38:27 +00:00
yann.collet.73@gmail.com
62c39e2445 Modified makefile to specify C99 support to compiler (GCC)
Slightly improved compression speed in small packet mode

git-svn-id: https://lz4.googlecode.com/svn/trunk@39 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-11-17 23:07:28 +00:00
yann.collet.73@gmail.com
439f270a4e Slightly improved decoding speed under GCC compilation
git-svn-id: https://lz4.googlecode.com/svn/trunk@38 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-11-15 22:06:33 +00:00
yann.collet.73@gmail.com
667f8ea1c8 Corrected a bug in LZ4_uncompress_unknownOutputSize(), which reported incorrect decodedSize when maxOutputSize=decodedSize. Thanks to Clayton Stangeland for report and solution.
git-svn-id: https://lz4.googlecode.com/svn/trunk@37 650e7d94-2a16-8b24-b05c-7c0b3f6821cd
2011-10-26 20:15:33 +00:00