Commit Graph

1311 Commits

Author SHA1 Message Date
Yann Collet
44287a3bf4 refactored decompress (#82) 2015-11-30 23:13:56 +01:00
Yann Collet
aead1bf86b changed to ZSTD_LEGACY_SUPPORT=0, as suggested within #80 2015-11-30 14:18:47 +01:00
Yann Collet
daa1c65500 fixed #81 : removed dead file (reported by @inikep) 2015-11-30 12:25:48 +01:00
Yann Collet
a85a8dd94a Fixed #80 (reported by @luben)
Added : tests for ZSTD_LEGACY=disable build mode
extended ZSTD_LEGACY=disable to dll build
2015-11-30 11:53:11 +01:00
Yann Collet
375727310c fixed compression bug 2015-11-29 03:17:04 +01:00
Yann Collet
7fe531e7ec fixed address space overflow (32-bits mode) 2015-11-29 02:38:09 +01:00
Yann Collet
52732b505d fixed huff0 decoder (32-bits mode) 2015-11-28 22:03:08 +01:00
Yann Collet
bf7aa3c14e fixed decoder error (rollbuffer mode) 2015-11-28 18:19:44 +01:00
Yann Collet
ad50c59bb7 fixed decoder error (32-bits mode, malicious input) 2015-11-28 17:09:28 +01:00
Yann Collet
00fd7a2110 protect 32-bits mode 2015-11-28 16:03:22 +01:00
Yann Collet
53fbf01370 minor level change 2015-11-28 14:08:01 +01:00
Yann Collet
800fa6c378 stronger tests for zbuff decompression 2015-11-27 14:30:23 +01:00
Yann Collet
31d1806a77 zbuff properly supports small dst buffers 2015-11-27 14:07:36 +01:00
Yann Collet
944042ab7d coalesce block+header size (buffered mode) 2015-11-27 13:26:38 +01:00
Yann Collet
d248aa1c62 fixed hang bug (infinite loop) in decoder, buffered mode, malicious input 2015-11-26 22:39:29 +01:00
Yann Collet
661b94fb5d fixed potential warning on undefine, reported by Maciej Adamczyk 2015-11-26 16:42:06 +01:00
Yann Collet
29a58c94f6 fixed lib makefile 2015-11-26 16:25:56 +01:00
Yann Collet
26fa696713 minor API change 2015-11-26 16:07:08 +01:00
Yann Collet
29a2c838c5 support for legacy 0.3 format 2015-11-26 16:02:04 +01:00
Yann Collet
c2ce890ac2 fixed bug in legacy decoder v0.2, reported by Maciej Adamczyk 2015-11-26 14:12:23 +01:00
Yann Collet
26415d3ff2 fixed leak 2015-11-26 12:43:28 +01:00
Yann Collet
6bcdeac954 fixed asan warning 2015-11-26 11:43:00 +01:00
Yann Collet
5f2ec63852 fixed decompression bug (buffered mode) 2015-11-26 10:32:17 +01:00
Yann Collet
91a97960f7 Added zbufftest 2015-11-26 09:59:49 +01:00
Yann Collet
e4fdad55dc fixed minor decompression bug in buffered mode 2015-11-25 21:09:17 +01:00
Yann Collet
d3cb690156 fixed leak issue 2015-11-25 15:26:55 +01:00
Yann Collet
377b9e8b94 fixed : potential malloc error 2015-11-25 15:04:37 +01:00
Yann Collet
7b2c31043c fixed : potential malloc error 2015-11-25 15:02:46 +01:00
Yann Collet
88fcd2916e Added : zstd buffered API 2015-11-25 14:42:45 +01:00
Yann Collet
c36521571e fixed large buffers bug 2015-11-24 14:06:07 +01:00
Yann Collet
225179dd05 more tests (bt modes) 2015-11-23 16:52:22 +01:00
Yann Collet
239cc289d3 fixed asan bugs 2015-11-23 16:17:21 +01:00
Yann Collet
03526e18fa preliminary rollbuffer support for bt mode 2015-11-23 15:29:15 +01:00
Yann Collet
c1e52f0f05 hc simplication 2015-11-23 14:37:59 +01:00
Yann Collet
06eade5102 comments 2015-11-23 14:23:47 +01:00
Yann Collet
5054ee0cc0 rollbuffer refactor 2015-11-23 13:34:21 +01:00
Yann Collet
d7233d6e14 more compression tests 2015-11-22 14:40:51 +01:00
Yann Collet
287b7d9607 small hc speed improvement 2015-11-22 13:24:05 +01:00
Yann Collet
428619ccd7 small cLevel update 2015-11-22 12:46:30 +01:00
Yann Collet
a85c77b9d3 fixed roll buffer lazy2 mode 2015-11-22 12:22:04 +01:00
Yann Collet
b7fc88eec7 fixed roll buffer lazy mode 2015-11-22 03:12:28 +01:00
Yann Collet
734aa92ed5 fixed roll buffer greedy mode 2015-11-22 03:01:33 +01:00
Yann Collet
9a24e5986b fixed roll buffer in fast mode 2015-11-22 02:53:43 +01:00
Yann Collet
007c1c6ff0 minor cr improvement 2015-11-22 02:42:28 +01:00
Yann Collet
7a23179779 small fast compression improvement 2015-11-21 15:27:35 +01:00
Yann Collet
402fdcf1a3 fixed asan 2015-11-20 12:46:08 +01:00
Yann Collet
55aa7f94e3 modified format 2015-11-20 12:04:52 +01:00
Yann Collet
743402cb23 modified format 2015-11-20 12:03:53 +01:00
Yann Collet
7dfd56be4a restored fix small blocks 2015-11-19 17:46:29 +01:00
Yann Collet
c95f899725 refactored greedy 2015-11-19 17:28:35 +01:00
Yann Collet
b3a2af970e refactored decompression 2015-11-19 17:13:19 +01:00
Yann Collet
110cc14bab fixed bug #73 notified by @nemequ 2015-11-19 12:02:28 +01:00
Yann Collet
dcac00e7a6 update library builder 2015-11-19 11:23:44 +01:00
Yann Collet
b2549846ba more tests 2015-11-18 11:29:32 +01:00
Yann Collet
94b9d8ec8d fix compression bug in rollbuffer mode 2015-11-17 16:14:55 +01:00
Yann Collet
138e89c9c4 fix compression bug (extDict mode) 2015-11-17 14:26:54 +01:00
Yann Collet
786eb7d42e fixed repcode bug 2015-11-17 12:23:53 +01:00
Yann Collet
82368cfa1b comment 2015-11-16 19:10:56 +01:00
Yann Collet
eaa5f75b99 fixed decompression bug 2015-11-15 11:13:41 +01:00
Yann Collet
93a823ccb7 fixed asan warnings 2015-11-13 15:08:43 +01:00
Yann Collet
89db5e001d rolling buffer preliminary support for fast mode 2015-11-13 11:27:46 +01:00
Yann Collet
0f366c61ed fixed streaming decoder 2015-11-12 16:19:30 +01:00
Yann Collet
5b78d2f20c basic rolling buffer support in decoder 2015-11-12 15:36:05 +01:00
Yann Collet
14983e7aed refactored compression code 2015-11-11 21:38:21 +01:00
Yann Collet
7f6e91fa98 fixed library compilation 2015-11-11 14:39:50 +01:00
Yann Collet
5be2dd25f2 Changed Library source tree
- no more zstdhc ; zstd.h is enough
- ZSTD_compress() now needs a compressionLevel
- separated zstd_compress.c and zstd_decompress.c
- updated zstdcli, fullbench, fuzzer with new API
2015-11-11 13:43:58 +01:00
Yann Collet
530918b409 level tuning 2015-11-10 10:52:58 +01:00
Yann Collet
9f432926b4 fileio can use small blocks params 2015-11-09 17:42:17 +01:00
Yann Collet
43e0cd512a small blocks params 2015-11-09 16:38:17 +01:00
Yann Collet
4baee50728 fix bug 2015-11-09 03:19:33 +01:00
Yann Collet
d1ade5a61d fix 32-bits mode 2015-11-08 15:49:20 +01:00
Yann Collet
e9eba608c2 simplified bt 2015-11-08 15:08:03 +01:00
Yann Collet
31d00ba4b3 fix bt bug 2015-11-08 14:11:29 +01:00
Yann Collet
72a8e751f4 level tuning 2015-11-07 22:24:46 +01:00
Yann Collet
f48e35c206 minor bt improvements 2015-11-07 01:13:31 +01:00
Yann Collet
a81d9ac42d minor bt CSpeed 2015-11-06 19:03:59 +01:00
Yann Collet
628065cf98 revert 2015-11-06 18:44:54 +01:00
Yann Collet
9b8e453713 minor CRatio improvement 2015-11-06 18:28:02 +01:00
Yann Collet
47cfa9a985 minor CRatio improvement 2015-11-06 17:13:46 +01:00
Yann Collet
eb283710dd minor greedy CRatio improvement 2015-11-06 16:33:11 +01:00
Yann Collet
fc2afcfa64 small Cspeed increase 2015-11-06 15:40:14 +01:00
Yann Collet
444873f494 minor greedy mod 2015-11-06 11:48:56 +01:00
Yann Collet
805a52a773 fixed asan warning 2015-11-06 10:52:17 +01:00
Yann Collet
8ad12ec343 level tuning 2015-11-06 10:19:00 +01:00
Yann Collet
f12c1304a8 integrate fast mode 2015-11-05 18:16:59 +01:00
Yann Collet
1f44b3f778 added fast mode 2015-11-05 17:32:18 +01:00
Yann Collet
47b68908b2 rename lazy2 2015-11-05 15:14:17 +01:00
Yann Collet
9036105b62 simplified source 2015-11-05 15:03:12 +01:00
Yann Collet
5106a76dc9 merged strats 2015-11-05 15:00:24 +01:00
Yann Collet
43ae161fe9 level tuning 2015-11-05 11:58:02 +01:00
Yann Collet
92309cb37e level tuning 2015-11-05 00:48:37 +01:00
Yann Collet
3137d1a059 fix fuzzer32 litCSize limit condition 2015-11-04 23:36:36 +01:00
Yann Collet
50c5cdb44c fixed issues reported by Maciej Adamczyk 2015-11-04 20:35:33 +01:00
Yann Collet
3e3582719c Fixed issue #62, reported by @luben 2015-11-04 18:19:39 +01:00
Yann Collet
e8455f51ea fix clang warning 2015-11-04 17:41:20 +01:00
Yann Collet
b241e9deb7 small compression improvement 2015-11-04 13:57:24 +01:00
Yann Collet
59d7063fbc fix and level tuning 2015-11-04 12:05:27 +01:00
Yann Collet
96b9f0ba4d btlazy2 2015-11-04 03:52:54 +01:00
Yann Collet
588d1e5fa0 Fixed asan issue reported by Maciej Adamczyk 2015-11-03 10:48:42 +01:00
Yann Collet
050efba81b level tuning 2015-11-03 09:49:30 +01:00
Yann Collet
3564487614 lazydeep 2015-11-02 16:14:46 +01:00
Yann Collet
7671f393be v0.3.2 2015-11-02 12:17:39 +01:00
Yann Collet
4e049bca8c Fixed Visual Studio issue #60, reported by @mailagentrus 2015-11-02 11:09:54 +01:00
Yann Collet
56e1092cb0 level tuning 2015-11-02 01:02:43 +01:00
Yann Collet
9b11b46f8a Fixed speed regression 2015-11-01 12:40:22 +01:00
Yann Collet
be2010ea1b lazy strategy 2015-10-31 12:57:14 +01:00
Yann Collet
4b100f43b0 level tuning 2015-10-30 15:49:48 +01:00
Yann Collet
ec43ba4a95 updated visual studio projects 2015-10-30 11:51:26 +01:00
Yann Collet
aa074051d6 decoding support for legacy v0.2 format 2015-10-30 11:21:50 +01:00
Yann Collet
fc04bcc6d7 fixed minor gcc warning 2015-10-30 07:11:07 +01:00
Yann Collet
8f9d49c092 fixed asan warning 2015-10-30 07:00:37 +01:00
Yann Collet
4114f95ce9 fix Visual Studio projects 2015-10-30 06:40:22 +01:00
Yann Collet
44fe99116e fixed hc alloc 2015-10-29 22:02:40 +01:00
Yann Collet
712def905b one less hc malloc 2015-10-29 18:41:45 +01:00
Yann Collet
3d9cf7acf2 fix include 2015-10-29 17:15:14 +01:00
Yann Collet
71bcdb5c1f sync paramgrill with HC starting at level 2 2015-10-29 17:08:03 +01:00
Yann Collet
2acb5d3d48 HC modes can be selected from command line 2015-10-29 16:49:43 +01:00
Yann Collet
76c5c2a4a0 minor tuning 2015-10-28 19:07:05 +01:00
Yann Collet
81e49e6654 fine tune & messages 2015-10-28 15:56:48 +01:00
Yann Collet
b315bc86e1 srcLog 2015-10-27 13:12:25 +01:00
Yann Collet
2c6992e1dc blocksize & T 2015-10-27 12:18:00 +01:00
Yann Collet
d55a7e0e4d simplified chain 2015-10-27 03:06:40 +01:00
Yann Collet
8b91abec18 can test param conf 2015-10-27 02:59:12 +01:00
Yann Collet
342892c3ae repcode+1 2015-10-26 17:44:04 +01:00
Yann Collet
786f5b554a skip slow conf faster 2015-10-26 15:45:58 +01:00
Yann Collet
3a787da419 Fixed : minor clang warning 2015-10-25 19:42:03 +01:00
Yann Collet
083fcc82fc HC params 2015-10-25 14:06:35 +01:00
Yann Collet
53fff6cd9d Individual memlog values 2015-10-24 13:48:37 +01:00
Yann Collet
ed0a781246 repfirst 2015-10-23 19:25:06 +01:00
Yann Collet
83fae977e6 Added asan tests 2015-10-23 15:21:53 +01:00
Yann Collet
fc60883d42 fixed issue #49, reported by Hanno Böck (@hannob) 2015-10-23 12:45:02 +01:00
Yann Collet
eeb8ba18d1 uncoupled maxdlog and chainlog 2015-10-22 16:55:40 +01:00
Yann Collet
f3eca25322 quick first zstdhc version 2015-10-22 15:31:46 +01:00
Yann Collet
353c5d26cf unified ctx naming convention 2015-10-21 14:39:26 +01:00
Yann Collet
f42803e5b4 restored ZSTD_compressCCtx() def 2015-10-21 13:31:46 +01:00
Yann Collet
8eb50b8acf Fixed minor gcc5+ warning 2015-10-21 10:01:09 +01:00
Yann Collet
7010c27a13 Added advanced compression functions 2015-10-21 09:07:25 +01:00
Yann Collet
c8a7254192 clang optimizer bug workaround 2015-10-20 03:01:38 +01:00
Yann Collet
4caefaf62f refactored literal segment 2015-10-19 19:25:44 +01:00
Yann Collet
1fbee1f483 Fixed sanitizer warning 2015-10-19 15:32:47 +01:00
Yann Collet
4d1a0ef515 minor speed improvement 2015-10-19 03:12:23 +01:00
Yann Collet
c7ae9ffde3 small decompression speed improvement 2015-10-19 02:36:34 +01:00
Yann Collet
107c5755f4 small decompression speed improvement 2015-10-19 02:14:43 +01:00
Yann Collet
50174c77fd missed updated files 2015-10-18 22:26:26 +01:00
Yann Collet
b1f3f4b565 update huff0 2015-10-18 22:18:32 +01:00
Yann Collet
8f86c700cd Fix uninitialized warnings reported by @nemequ 2015-10-14 17:53:44 +01:00
Yann Collet
59aac5f467 Clarified comments 2015-10-14 16:28:19 +01:00
xaphier
77ee44c7b6 Remove one malloc/free from compression
By making the buffer part of the zstd context structure, one malloc/free
can be removed from the compression.
2015-10-10 12:14:51 +02:00
Yann Collet
be50aaa0ee Added : Frame concatenation ability 2015-09-10 23:26:09 +01:00
Yann Collet
5abd8203cb Fix : decompression i/o detects flush write errors 2015-08-27 03:16:04 +01:00
Yann Collet
866a3c3158 Fixed minor visual warning 2015-08-26 23:10:09 +01:00
Yann Collet
352ab88aea fixed minor issue on decoding invalid data 2015-08-26 22:45:23 +01:00
Yann Collet
6b5198fe3a Updated FSE 2015-08-26 19:22:01 +01:00
Yann Collet
bf50409e05 Refactor Makefile and .travis tests 2015-08-26 00:19:06 +01:00
Yann Collet
f44b2b02b4 Zstd cli : --version and --help write to stdout 2015-08-25 23:32:45 +01:00
Yann Collet
c705567522 Fixed : compression error on some specific distribution 2015-08-25 22:56:42 +01:00
Yann Collet
1885029ba1 Fixed a few issues found by AFL (American Fuzzy Lop) 2015-08-24 20:17:11 +01:00
Yann Collet
fee8e240c7 Fixed decoding error #11 (reported by @magv) 2015-08-24 15:47:04 +01:00
Yann Collet
d5d9bc3f82 Added : ZSTD decompression : ability to resist to noisy/faulty data source 2015-08-23 23:13:49 +01:00
Yann Collet
d02114e0e1 updated fse 2015-08-21 03:59:31 +01:00
Yann Collet
997f9ee2ef Added : fuzzer tests : decompressing noisy src 2015-08-21 02:44:20 +01:00
Yann Collet
7d20acd340 Fix : decoder issue in exceptionnal circumstances (dst buffer too small) 2015-08-20 15:55:50 +01:00
Yann Collet
602834f794 Fixed : bug in compression in specific conditions (too small dst size) 2015-08-20 07:46:10 +01:00
Yann Collet
23743530e0 Updated fse 2015-08-19 23:53:56 +01:00
Yann Collet
f4ce8913a3 Added more strigent tests : compresson into too small buffer 2015-08-11 14:18:45 +01:00
Yann Collet
f90314610d Minor decompression simplification 2015-08-08 02:54:26 +01:00
Yann Collet
8a46c159c5 minor compress sequence refactor 2015-08-08 02:16:11 +01:00
Yann Collet
e9853b2cdb Fixed : ZSTD_compress() can attempt compression on a too small buffer 2015-08-07 19:07:32 +01:00
Yann Collet
96f3b2c0f7 zstd_compress() no longer requires maxDstSize >= ZSTD_compressBound(srcSize) 2015-08-07 15:50:42 +01:00
Yann Collet
a787550d1c Updated FSE lib 2015-08-07 15:21:00 +01:00
Yann Collet
77c82b680b updated fse 2015-08-02 01:19:09 +01:00
Yann Collet
138db2187d Fixed some minor sanitizer warnings within huff0 2015-07-27 20:19:21 +01:00
Yann Collet
fb8296f55c Updated fse (faster huff0 32-bits decoding) 2015-07-27 19:34:27 +01:00
Yann Collet
e8c6bb1e42 Integrated huff0 (breaking format change) 2015-07-26 00:23:57 +01:00
Yann Collet
968f275981 Changed allocation strategy to reduce stack usage of ZSTD_compressSequences() 2015-07-07 16:54:25 -08:00
Yann Collet
858db1291f Fixed : ZSTD_compress() corrently prevents buffer overflow 2015-07-07 01:02:04 -08:00
Yann Collet
dc6c1d920a Fixed clang warning 2015-07-07 00:44:22 -08:00
Yann Collet
674d91b3da Added sanitize=undefine test 2015-07-07 00:36:49 -08:00
Yann Collet
17867ced03 Fixed minor clang warnings 2015-07-07 00:14:27 -08:00
Yann Collet
7083b8a54a Travis CI : added ARM compilation tests 2015-07-06 23:58:59 -08:00
Yann Collet
ee28a0def4 Fixed issue #34 and #31 2015-07-06 23:45:35 -08:00
Yann Collet
94f998b1fc Fixed a few visual analyzer warnings 2015-07-04 23:10:40 -08:00
Yann Collet
7393c5a51d Advanced API change : Cctx & DCtx are now incomplete types for stricter type checking 2015-07-04 18:20:42 -08:00
Yann Collet
1efa31fad8 Updated FSE lib 2015-07-04 15:56:41 -08:00
Yann Collet
078a9a2804 Added Wcast-qual compilation flag
Updated xxHash
Removed log traces
2015-06-20 19:37:53 -08:00
Yann Collet
213089c078 Updated FSE
Added clang and g++ tests
2015-06-18 07:43:16 -08:00
Yann Collet
bbfa7d77c9 Fixed issue #28 2015-03-23 23:15:22 +01:00
Yann Collet
ad68a0e5f7 "type redef fix" for gcc <= 4.4 2015-02-26 00:29:15 +01:00
Yann Collet
26aa1ec946 updated FSE 2015-02-24 09:05:58 +01:00
Yann Collet
a3c75bad5a Updated FSE
Faster speed on barely compressible data
2015-02-21 03:31:59 +01:00
Yann Collet
00be3437a8 Some comments, to explain streaming decompression API 2015-02-20 18:53:31 +01:00
Yann Collet
1db6f22f34 Removed useless constants 2015-02-17 13:38:44 +01:00
Yann Collet
c5d46b5c90 New streaming API behavior, to solve issue 19 (https://github.com/Cyan4973/zstd/issues/19) 2015-02-16 18:06:26 +01:00
Yann Collet
fb98fd0bd4 datagen refactoring 2015-02-10 18:15:20 +01:00
Yann Collet
e30c39cd1b internal refactoring - better separation between match & entropy 2015-02-09 03:50:11 +01:00
Yann Collet
2ddf7e9a28 Fixed : FSE issue with corner case distributions 2015-02-08 20:26:47 +01:00
Yann Collet
d6914bfd5a fix minor Visual warning 2015-02-01 12:09:46 +01:00
Yann Collet
aacace37f7 Fixed a few clang warnings 2015-02-01 11:57:30 +01:00
Yann Collet
b0802817c0 avx2 mode solely detected using __AVX2__ macro 2015-02-01 10:13:22 +01:00
Yann Collet
e5c25e0ebc minor fix for Visual 2015-01-31 20:10:53 +01:00
Yann Collet
936e678dda Fixed : issue 8 regarding huge input buffer (> 4 GB) 2015-01-31 15:09:51 +01:00
Yann Collet
439eb77088 Normalize all the line endings 2015-01-31 10:52:59 +01:00
Yann Collet
1cc58def2d Restored cast for C++ (fse) 2015-01-29 07:13:54 +01:00
Yann Collet
6434adcf54 Fix : no AVX2 for Visual 2008 and older 2015-01-29 07:00:43 +01:00
Yann Collet
565b81d0ba fixed : corner case (FSE) 2015-01-29 06:51:30 +01:00
Yann Collet
e98ea20c37 Fix for VS2005 (AVX2 intrinsics) 2015-01-28 01:23:14 +01:00
r-lyeh
0da7941a72 Bugfixed Visual Studio errors when compiled as C++ sources 2015-01-26 10:24:04 +01:00
Yann Collet
fb81417323 Fixed : minor warnings under Visual 32 bits 2015-01-25 13:19:12 +01:00
Yann Collet
759433d679 Updated fullbench tests 2015-01-24 13:31:55 +01:00
Yann Collet
04d8e15e57 fixed : file permissions 2015-01-24 11:22:13 +01:00
Yann Collet
4856a00164 Initial release 2015-01-24 01:58:16 +01:00