Nick Terrell
bb13387d7d
Fix pool for threading.h
2016-12-31 19:10:47 -05:00
Nick Terrell
4204e03e77
Add threading.h condition variables
2016-12-31 19:10:29 -05:00
Yann Collet
3b9d434356
extended ZSTDMT code support for non-MT systems and WIN32 (preliminary)
2016-12-31 16:32:19 +01:00
Yann Collet
3b29dbd9e8
new zstdmt version using generic treadpool
2016-12-31 06:04:25 +01:00
Yann Collet
c6a6417458
bench correctly measures time for multi-threaded compression (posix only)
2016-12-31 03:31:26 +01:00
Nick Terrell
e777a5be6b
Add a thread pool for ZSTDMT and COVER
2016-12-29 23:39:44 -08:00
Yann Collet
0819abe3c1
added ZSTD_createDDict_byReference() body
2016-12-21 19:25:15 +01:00
Nick Terrell
8de46ab51a
Export all API functions
2016-12-16 13:27:30 -08:00
Yann Collet
5397a66b19
minor BMI version check
2016-12-13 15:21:06 +01:00
Nick Terrell
064a143520
Fix execSequence wildcopy undefined behavior
...
execSequence relied on pointer overflow to handle cases where
`sequence.matchLength < 8`. Instead of passing an `size_t` to
wildcopy, pass a `ptrdiff_t`.
2016-12-12 19:01:23 -08:00
Yann Collet
825dffbc43
moved zbuff source files into lib/deprecated
2016-12-05 19:28:19 -08:00
Przemyslaw Skibinski
821bf1febc
fixed Doxygen trailing comment
2016-12-02 16:13:41 +01:00
Yann Collet
b89af20353
reduced table sizes for HUF_readDTableX4
2016-12-01 18:24:59 -08:00
Yann Collet
a0d742b1e4
introduced HUF_buildCTable_wksp(), to reduce stack memory usage
2016-12-01 17:47:30 -08:00
Yann Collet
e928f7e16d
introduced ext_wksp variants of count to reduce stack memory usage
2016-12-01 16:13:35 -08:00
Yann Collet
5e00b848a8
FSE_compress_wksp() uses less stack space
2016-11-30 16:46:13 -08:00
Yann Collet
d79a9a00d9
Introduced FSE_compress_wksp() and FSE_buildCTable_wksp() to reduce stack memory usage
2016-11-30 15:52:20 -08:00
Yann Collet
766431909f
introduced FSE_decompress_wksp(), to use less stack space
2016-11-30 12:36:45 -08:00
Yann Collet
167c494748
Merge branch 'dev' of github.com:facebook/zstd into dev
2016-11-29 14:05:15 -08:00
Yann Collet
52e136ed3d
long decoder compatible with round and separate buffers
2016-11-28 19:59:11 -08:00
Przemyslaw Skibinski
9ca65af810
zstd_opt.h: improved price function
2016-11-23 17:22:54 +01:00
Yann Collet
0d761dbe95
Merge pull request #453 from inikep/dev11
...
fullbench-dll
2016-11-16 15:45:30 -08:00
Yann Collet
52afb3993e
zbuff API now generates deprecation warnings
2016-11-16 08:50:54 -08:00
Przemyslaw Skibinski
179555c1d1
working fullbench-dll
2016-11-15 18:05:46 +01:00
Yann Collet
2115724c22
Merge pull request #430 from terrelln/exec-sequences
...
ZSTD_execSequence() accepts match in last 7 bytes
2016-10-28 10:45:05 -07:00
Nick Terrell
eb7873a048
ZSTD_execSequence() accepts match in last 7 bytes
...
The zstd reference compressor will not emit a match in the last 7
bytes of a block. The decompressor will also not accept a match
in the last 7 bytes. This patch makes the decompressor accept a
match in the last 7 bytes.
2016-10-25 21:24:15 -07:00
Nick Terrell
d760529a05
Fix stack buffer overrun when weightTotal == 0
...
If `weightTotal == 0`, then `BIT_highbit32(weightTotal)` is
undefined behavior in the case that it calls `__builtin_clz()`.
If `tableLog == HUF_TABLELOG_ABSOLUTEMAX` then we will access one
byte beyond the end of the buffer.
2016-10-19 11:39:11 -07:00
Nick Terrell
ccfcc643da
Check if dict is empty before reading first byte
2016-10-17 11:46:03 -07:00
Yann Collet
5d919e7ac3
added ZSTD_error_frameParameter_windowTooLarge ( #403 )
2016-10-12 17:29:24 -07:00
Yann Collet
ef2357d0d3
created error_private.c, so that a single list of error strings get included
2016-10-11 17:24:50 -07:00
Yann Collet
a17fd7312a
changed error_public.h into zstd_errors.h
2016-10-11 16:41:09 -07:00
Yann Collet
18b51b99c0
sync fse
2016-10-11 08:21:09 -07:00
Yann Collet
51f4d566c2
small decompression speed boost for very small data
2016-09-22 15:57:28 +02:00
Yann Collet
95d07d7447
introduced CHECK_E
2016-09-06 16:38:51 +02:00
Yann Collet
3e21ec5b01
introduced CHECK_F
2016-09-06 15:36:19 +02:00
Yann Collet
5c956d593c
FORCE_INLINE common definition
2016-09-06 15:05:19 +02:00
Yann Collet
1563bfeabc
fixing FORCE_INLINE for older compilers ( #330 )
2016-09-02 11:44:21 -07:00
David Lam
e10f7f3dcb
merge
2016-08-30 12:03:36 -07:00
Yann Collet
4ded9e591c
added boilerplate
2016-08-30 11:06:28 -07:00
David Lam
da9d3b7057
Cleanup some errors in typedef comments and remove duplicated HOWTO from zbuff_decompress.c
2016-08-29 17:31:51 -07:00
Yann Collet
23b6e05d8e
ZSTD_malloc() and ZSTD_free(), to simplify customMem
2016-08-28 21:05:43 -07:00
Yann Collet
4bf317dd00
first version supporting legacy streams (transparent decoding)
2016-08-28 07:43:34 -07:00
Yann Collet
87c18b2ebd
fixed multiple minor warnings for XCode
2016-08-26 01:43:47 +02:00
inikep
a3a47ec4d0
Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into Other
2016-08-24 21:25:49 +02:00
inikep
e416e30019
remove unnecessary comments
2016-08-24 17:32:09 +02:00
inikep
4e90f6c1e0
removed ZSTD_LOG_ENCODE and ZSTD_LOG_BLOCK
2016-08-24 17:24:11 +02:00
inikep
83388e109f
removed ZSTD_LOG_PARSER
2016-08-24 17:22:20 +02:00
inikep
8a36f8527c
removed stats in debug mode
2016-08-24 17:19:12 +02:00
Yann Collet
17e482efdd
added ZSTD_setDStreamParameter()
2016-08-23 16:58:10 +02:00
Yann Collet
0cfe2ec2fd
sync fse version
2016-08-20 00:26:26 +02:00
inikep
5f49eba512
added usage of rep[0]-1 for the optimal parser
2016-08-10 15:01:53 +02:00
inikep
48849f86f0
fixed compilation with Intel Compiler with Windows
2016-08-10 14:26:35 +02:00
Yann Collet
1ea5622a32
updated xxhash
2016-08-10 09:40:08 +02:00
Yann Collet
666398e7ed
added : xxhash namespace enforced from xxhash.h.
...
added : xxhash namespace test.
removed : -DXXH_NAMESPACE
2016-08-10 08:16:51 +02:00
Yann Collet
8ded0b84aa
update xxhash to v0.6.2
2016-08-10 07:40:40 +02:00
Yann Collet
280f9a8754
minor comment
2016-08-08 00:44:00 +02:00
Yann Collet
8cebfd1d26
fix attempt on test-zstd-speed
2016-07-31 01:59:23 +02:00
Yann Collet
c0ce4f1211
slightly improved compression speed
2016-07-30 00:55:13 +02:00
Yann Collet
ed57d8530a
new seqStore
2016-07-29 21:22:17 +02:00
Yann Collet
c00d30fbe4
Merge pull request #264 from inikep/dev08
...
Dev08
2016-07-29 17:42:30 +02:00
Yann Collet
6a82f0f8bf
minor comments
2016-07-29 00:55:45 +02:00
Yann Collet
ffa7d0ac1e
clarified comment
2016-07-28 21:01:17 +02:00
Yann Collet
60ba31c570
zbuff uses ZSTD_compressEnd()
2016-07-28 19:55:09 +02:00
Yann Collet
e7bf9156d1
Clarified API comments, from suggestions by Bryan O'Sullivan
2016-07-28 05:00:57 +02:00
Yann Collet
c991cc1828
new frame end, 32-bits checksums
2016-07-28 00:55:43 +02:00
Yann Collet
c154d9d6a2
better support for large dictionaries (> 128 KB)
2016-07-27 14:37:00 +02:00
inikep
003c7a8568
optimal parser: removed ZSTD_REP_INIT
2016-07-27 11:07:13 +02:00
Yann Collet
d50f9db3ea
Improved speed on clang and gcc -O2, thanks to @ebiggers ! ( #263 )
2016-07-26 21:30:35 +02:00
Yann Collet
cbc5e9dc19
fixes oob read
2016-07-24 18:02:04 +02:00
Yann Collet
38b75ddeb2
removed special case all-1 huffman distribution
2016-07-24 15:35:59 +02:00
Yann Collet
7ed5e33b89
minor comment changes
2016-07-24 14:26:11 +02:00
Yann Collet
f8e7b5363f
unified encoding types
2016-07-23 16:31:49 +02:00
Yann Collet
571a59034a
changed enccoding type order : raw, rle, compressed, repeat-stats
2016-07-23 15:52:05 +02:00
Yann Collet
6fa05a2371
cBlockSize uses little-endian convention
2016-07-22 14:37:09 +02:00
Yann Collet
d5c5a77990
minor comments clarifications
2016-07-20 13:35:14 +02:00
Yann Collet
85f3919960
moved zstd.h
to /lib
2016-07-17 20:42:21 +02:00
Yann Collet
9375590462
update version to v0.7.5
2016-07-17 16:44:18 +02:00
Yann Collet
e557fd5e92
minor compression level corrections
2016-07-17 16:21:37 +02:00
Yann Collet
d54b2d23b4
minor static assert for 32/64 bits system. Suggested by @ebiggers
2016-07-17 15:53:18 +02:00
Yann Collet
961b6a0e34
ZSTD_compressBlock() limits block size depending on windowLog parameter
2016-07-15 11:58:49 +02:00
Yann Collet
8847238cac
simplified ZSTD_estimateCCtxSize()
2016-07-14 17:05:38 +02:00
Yann Collet
45dc35628c
first version of doubleFast
2016-07-12 09:47:31 +02:00
Yann Collet
d158c35e9f
added ZSTD_estimateDCtxSize()
2016-07-11 13:46:25 +02:00
Yann Collet
8e0ee681b8
added ZSTD_sizeofDCtx()
2016-07-11 13:09:52 +02:00
Yann Collet
3ae543ce75
added ZSTD_estimateCCtxSize()
2016-07-11 03:12:17 +02:00
Yann Collet
25c506601c
promote ZSTD_getDecompressedSize() to stable API
2016-07-10 01:46:18 +02:00
Yann Collet
3b6ae77e15
comment clarification
2016-07-08 23:42:22 +02:00
Yann Collet
ed3845d3fa
introduced ZSTD_WINDOWLOG_MAX_32 ( #239 ), suggested by @GregSlazinski
2016-07-08 12:57:10 +02:00
Yann Collet
e72efeb0a1
removed "error_public.h" dependency from "zstd.h"
2016-07-07 14:17:40 +02:00
Yann Collet
e09d38e921
removed mem.h
dependency from zbuff.h
(experimental section)
2016-07-07 13:17:37 +02:00
Yann Collet
f323bf7d32
added : ZSTD_getDecompressedSize()
2016-07-07 13:14:21 +02:00
Yann Collet
52c04fe58f
removed mem.h
dependency from zstd.h
(experimental section)
2016-07-07 11:53:18 +02:00
Yann Collet
f246cf5423
ZSTD_decompress_usingDDict() compatible with Legacy mode
2016-07-06 20:32:27 +02:00
Yann Collet
d916c908e0
updated doc
2016-07-04 00:42:58 +02:00
Yann Collet
698cb63305
Updated specifications
2016-07-03 18:49:35 +02:00
Yann Collet
2fa9904844
update specification and comments
2016-07-01 20:55:28 +02:00
Yann Collet
6c6e1751f6
use ZSTD_getParams() to simplify code
2016-06-27 15:28:45 +02:00
Yann Collet
3d2cd7f816
Introduced ZSTD_getParams()
...
bench now uses ZSTD_createCDict_advanced()
2016-06-27 15:12:26 +02:00
Yann Collet
529d9c7dee
updated version to v0.7.2
2016-06-27 10:03:10 +02:00
Yann Collet
63b5e7a2ea
Improved comments
2016-06-26 17:42:15 +02:00
Yann Collet
3755eb8fea
fixed strict-aliasing warning on gcc6
2016-06-22 13:15:53 +02:00
Yann Collet
a49e066b26
clarified comments on ZSTD_compressContinue()
2016-06-21 11:54:03 +02:00
Yann Collet
d4f38d0dcd
updated library to v0.7.1
2016-06-21 10:15:43 +02:00
Yann Collet
510cff3570
minor comment change
2016-06-16 16:39:55 +02:00
Yann Collet
52a0622beb
RepsCodes are saved into Dict
...
(uncomplete : need decompression to regenerate them)
2016-06-16 01:05:04 +02:00
Yann Collet
45c03c564f
fixed corruption with inter-blocks repeated offsets
2016-06-14 13:46:11 +02:00
Yann Collet
4266c0a2fd
adding inter-blocks rep-offsets
2016-06-14 01:49:25 +02:00
Yann Collet
18c8f79f3e
fixed gcc warning on uninitialized structure variable
2016-06-12 22:51:52 +02:00
Yann Collet
cd98f93cff
Fixed decompression issue with invalid data
2016-06-11 23:26:22 +02:00
Yann Collet
237ad4beb3
Added single-stream decompression variant using external DTable
2016-06-11 01:46:03 +02:00
Yann Collet
289bbd52e5
Updated huff0
2016-06-11 01:31:54 +02:00
Yann Collet
0974f681a4
completed .gitignore
2016-06-10 14:44:16 +02:00
Yann Collet
9dd12742f3
litBlockType_t
is an enum
2016-06-10 00:12:26 +02:00
Yann Collet
662a541431
updated huff0 - now generates a common HUF_DTable type for all decoding tables
2016-06-08 11:11:02 +02:00
Yann Collet
302fb53a76
Removed ZSTD_*_usingPrepared?Ctx()
declaration from public space
2016-06-07 12:16:49 +02:00
Yann Collet
81e13ef7cf
first implementation of the new dictionary API (untested)
2016-06-07 00:51:51 +02:00
Yann Collet
673f0d7cdc
new frame format, allowing custom window size
2016-06-06 00:26:38 +02:00
Yann Collet
89703d20fb
reduced dependencies
2016-06-05 01:50:33 +02:00
Yann Collet
a91ca620cf
removed HUF_readStats()
from public space
2016-06-05 01:33:55 +02:00
Yann Collet
d0e2cd15cb
Merged fse_static
into fse.h
. Now requires FSE_STATIC_LINKING_ONLY
macro.
2016-06-05 00:58:01 +02:00
Yann Collet
130fe11394
merged huf_static.h
into huf.h
. Requires HUF_STATIC_LINKING_ONLY
macro.
2016-06-05 00:42:28 +02:00
Yann Collet
49bb0041af
removed ZSTD_highbit()
from zstd_internal.h
, as it is only used by zstd_compress.c
2016-06-04 20:17:38 +02:00
Yann Collet
d3b7f8d21f
Merged zstd_static.h
into zstd.h
. Now requires ZSTD_STATIC_LINKING_ONLY
macro
2016-06-04 19:47:02 +02:00
Yann Collet
ac110a1f21
Removed ZBUFF internal util function from public area
2016-06-04 19:16:49 +02:00
Yann Collet
5347aee8f7
merged zbuff_static.h
into zbuff.h
. Now requires ZBUFF_STATIC_LINKING_ONLY
macro
2016-06-04 19:12:48 +02:00
inikep
2a74609b90
zlibWrapper: ZWRAP_createCCtx and ZWRAP_freeCCtx use custom memory allocation functions
2016-06-03 14:53:51 +02:00
inikep
3763c77f6b
defaultCustomNULL replaced with defaultCustomMem
2016-06-03 13:28:20 +02:00
inikep
db2f540414
added defaultCustomNULL
2016-06-03 12:56:56 +02:00
inikep
b74a468fad
Merge remote-tracking branch 'refs/remotes/Cyan4973/dev070' into dev070
2016-06-02 22:09:09 +02:00
inikep
ff9114aee3
zlibWrapper: added support for custom memory allocation functions
2016-06-02 16:52:36 +02:00
inikep
c4807f4d2f
default custom allocation functions moved to zstd_internal.h
2016-06-02 15:11:39 +02:00
inikep
2866951558
opaque parameter for custom memory allocation functions
2016-06-02 13:04:18 +02:00
inikep
9242816b56
fparamsPtr->windowLog==0 means that a frame is skippable
2016-06-01 18:47:04 +02:00
Yann Collet
70d1301d6e
Changed ZSTD_adjustCParams()
prototype
...
`ZSTD_adjustCParams()` is now automatically invoked at the end of `ZSTD_getCParams()`
2016-06-01 18:45:34 +02:00
Yann Collet
83c3f4427c
upgraded zbufftest to also test advanced frame parameters no/checksum no/dictID
2016-06-01 17:44:53 +02:00
inikep
5c2771710d
Merge remote-tracking branch 'refs/remotes/Cyan4973/dev070' into dev070
...
# Conflicts:
# .gitignore
# lib/decompress/zstd_decompress.c
# programs/zbufftest.c
2016-06-01 09:16:11 +02:00
Yann Collet
8e3a36a6db
decompression validates frame content checksum
2016-06-01 00:18:28 +02:00
inikep
a6b942018d
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev070
...
# Conflicts:
# .travis.yml
# Makefile
# lib/common/zstd_static.h
# programs/Makefile
# projects/VS2008/zstd/zstd.vcproj
# projects/VS2008/zstdlib/zstdlib.vcproj
# projects/cmake/lib/CMakeLists.txt
# projects/cmake/programs/CMakeLists.txt
2016-06-01 00:07:09 +02:00
Yann Collet
f2a3b6e7b4
added : frame content checksum
2016-05-31 22:23:45 +02:00
inikep
f772bf54a5
support for skippable frames
2016-05-31 12:43:46 +02:00
Yann Collet
c0a9bf3c2e
minor code refactoring
2016-05-30 04:48:32 +02:00
Yann Collet
c46fb924df
added dictionary ID (incomplete)
2016-05-29 05:01:04 +02:00
Yann Collet
0c5e8b17ad
moved xxhash to lib/common
2016-05-29 01:06:30 +02:00
inikep
957823f56f
zstdcli: -r (operate recursively on directories) works with dictBuilder and compression
2016-05-25 15:30:55 +02:00
inikep
e75909ef93
ZBUFF_createCCtx_advanced moved to zbuff_static.h
2016-05-25 11:31:16 +02:00
inikep
02c244bf78
Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into dev
2016-05-24 17:15:04 +02:00
inikep
fb5df613cf
zstd_stats.h included only in debug mode
2016-05-24 15:36:37 +02:00
inikep
71dd67cf57
fullbench: tests for ZBUFF_createCCtx_advanced and ZBUFF_createDCtx_advanced
2016-05-24 10:57:14 +02:00
inikep
13ba880b49
added ZBUFF_createCCtx_advanced and ZBUFF_createDCtx_advanced
2016-05-23 17:04:23 +02:00
inikep
107e243195
added ZSTD_createDCtx_advanced
2016-05-23 16:24:52 +02:00