]> git.ipfire.org Git - thirdparty/zstd.git/log
thirdparty/zstd.git
7 years agoMerge pull request #1075 from terrelln/cmake 1076/head
Yann Collet [Mon, 26 Mar 2018 22:19:02 +0000 (15:19 -0700)] 
Merge pull request #1075 from terrelln/cmake

Fix CMake build

7 years agoFix CMake build 1075/head
Nick Terrell [Mon, 26 Mar 2018 21:58:33 +0000 (14:58 -0700)] 
Fix CMake build

`MAN_INSTALL_DIR` was undefined.

Tested with `make cmakebuild`, and saw that the man pages got installed to the right place:

```
-- Installing: /Users/terrelln/install_test_dir/lib/pkgconfig/libzstd.pc
-- Installing: /Users/terrelln/install_test_dir/include/zstd.h
-- Installing: /Users/terrelln/install_test_dir/include/zbuff.h
-- Installing: /Users/terrelln/install_test_dir/include/zdict.h
-- Installing: /Users/terrelln/install_test_dir/include/zstd_errors.h
-- Installing: /Users/terrelln/install_test_dir/lib/libzstd.1.3.4.dylib
-- Installing: /Users/terrelln/install_test_dir/lib/libzstd.dylib
-- Installing: /Users/terrelln/install_test_dir/lib/libzstd.a
-- Installing: /Users/terrelln/install_test_dir/bin/zstd
-- Up-to-date: /Users/terrelln/install_test_dir/bin/zstd
-- Installing: /Users/terrelln/install_test_dir/bin/zstdcat
-- Installing: /Users/terrelln/install_test_dir/bin/unzstd
-- Installing: /Users/terrelln/install_test_dir/share/man/man1/zstd.1
-- Installing: /Users/terrelln/install_test_dir/share/man/man1/zstdcat.1
-- Installing: /Users/terrelln/install_test_dir/share/man/man1/unzstd.1
-- Installing: /Users/terrelln/install_test_dir/bin/zstdmt
-- Installing: /Users/terrelln/install_test_dir/bin/pzstd
-- Installing: /Users/terrelln/install_test_dir/zstd_manual.html
```

7 years agoupdated NEWS for v1.3.4
Yann Collet [Mon, 26 Mar 2018 17:21:49 +0000 (10:21 -0700)] 
updated NEWS for v1.3.4

7 years agoupdated VS studio readme
Yann Collet [Mon, 26 Mar 2018 16:55:10 +0000 (09:55 -0700)] 
updated VS studio readme

7 years agoMerge pull request #1065 from HaydnTrigg/dev
Yann Collet [Mon, 26 Mar 2018 16:21:12 +0000 (09:21 -0700)] 
Merge pull request #1065 from HaydnTrigg/dev

Generic Visual Studio 2017 build script

7 years agoMerge pull request #1072 from facebook/srcPackage
Yann Collet [Mon, 26 Mar 2018 01:26:42 +0000 (18:26 -0700)] 
Merge pull request #1072 from facebook/srcPackage

Src package

7 years agoMerge pull request #1074 from rxrbln/dev
Yann Collet [Mon, 26 Mar 2018 01:26:24 +0000 (18:26 -0700)] 
Merge pull request #1074 from rxrbln/dev

fixed legacy/zstd_v* with older gcc version, by guarding builtin_*

7 years agofixed legacy/zstd_v* with older gcc version, by guarding builtin_* 1074/head
RenĂ© Rebe [Sun, 25 Mar 2018 18:35:15 +0000 (20:35 +0200)] 
fixed legacy/zstd_v* with older gcc version, by guarding builtin_*
like in other files

7 years agoSwapped VS2017 preference order 1065/head
Haydn Trigg [Sun, 25 Mar 2018 15:33:53 +0000 (02:03 +1030)] 
Swapped VS2017 preference order

7 years agoMerge branch 'dev' into srcPackage 1072/head
Yann Collet [Sat, 24 Mar 2018 16:55:13 +0000 (09:55 -0700)] 
Merge branch 'dev' into srcPackage

7 years agoMerge pull request #1073 from facebook/hasAttribute
Yann Collet [Sat, 24 Mar 2018 16:52:26 +0000 (09:52 -0700)] 
Merge pull request #1073 from facebook/hasAttribute

make `DYNAMIC_BMI2` support of `clang` conditional to `__has_attribute()`

7 years agoadded __has_attribute() define for non-clang compilers 1073/head
Yann Collet [Sat, 24 Mar 2018 02:04:48 +0000 (19:04 -0700)] 
added __has_attribute() define for non-clang compilers

7 years agomake DYNAMIC_BMI2 support of clang conditional to __has_attribute()
Yann Collet [Sat, 24 Mar 2018 01:45:42 +0000 (18:45 -0700)] 
make DYNAMIC_BMI2 support of clang conditional to __has_attribute()

to support older clang versions such as 3.4

7 years agoMerge branch 'dev' of github.com:facebook/zstd into dev
Yann Collet [Sat, 24 Mar 2018 01:39:53 +0000 (18:39 -0700)] 
Merge branch 'dev' of github.com:facebook/zstd into dev

7 years agoRevert "create .tar.zst source package"
Yann Collet [Sat, 24 Mar 2018 01:39:42 +0000 (18:39 -0700)] 
Revert "create .tar.zst source package"

This reverts commit 929608146a439c4bd28b989a5af47cb9afce2af5.

7 years agomake artifacts ande extended tests only on master
Yann Collet [Sat, 24 Mar 2018 00:57:37 +0000 (17:57 -0700)] 
make artifacts ande extended tests only on master

7 years agorestored certutil command line
Yann Collet [Sat, 24 Mar 2018 00:57:11 +0000 (17:57 -0700)] 
restored certutil command line

7 years agoclean certutil output
Yann Collet [Sat, 24 Mar 2018 00:52:16 +0000 (17:52 -0700)] 
clean certutil output

7 years agoadded sha256 sig
Yann Collet [Sat, 24 Mar 2018 00:40:53 +0000 (17:40 -0700)] 
added sha256 sig

7 years agocreated zstd archive from git archive
Yann Collet [Sat, 24 Mar 2018 00:20:05 +0000 (17:20 -0700)] 
created zstd archive from git archive

7 years agoexport zstd/master from github using svn
Yann Collet [Sat, 24 Mar 2018 00:06:11 +0000 (17:06 -0700)] 
export zstd/master from github using svn

7 years agogit clone master branch (hardcoded)
Yann Collet [Fri, 23 Mar 2018 23:52:32 +0000 (16:52 -0700)] 
git clone master branch (hardcoded)

7 years agogit clone for clean src tar
Yann Collet [Fri, 23 Mar 2018 23:49:34 +0000 (16:49 -0700)] 
git clone for clean src tar

7 years agoadded tar command
Yann Collet [Fri, 23 Mar 2018 23:36:18 +0000 (16:36 -0700)] 
added tar command

7 years agoadded path print
Yann Collet [Fri, 23 Mar 2018 23:27:28 +0000 (16:27 -0700)] 
added path print

7 years agoremoved src artifact lines
Yann Collet [Fri, 23 Mar 2018 23:24:54 +0000 (16:24 -0700)] 
removed src artifact lines

7 years agocommented src archive lines
Yann Collet [Fri, 23 Mar 2018 23:23:23 +0000 (16:23 -0700)] 
commented src archive lines

7 years agoadded srcPackage to list of branch producing artifacts
Yann Collet [Fri, 23 Mar 2018 23:15:56 +0000 (16:15 -0700)] 
added srcPackage to list of branch producing artifacts

7 years agocreate .tar.zst source package
Yann Collet [Fri, 23 Mar 2018 22:00:04 +0000 (15:00 -0700)] 
create .tar.zst source package

7 years agoMerge pull request #1071 from terrelln/mt-pics
Yann Collet [Fri, 23 Mar 2018 21:25:42 +0000 (14:25 -0700)] 
Merge pull request #1071 from terrelln/mt-pics

Add zstdmt long range mode graphs

7 years agoAdd zstdmt long range mode graphs 1071/head
Nick Terrell [Fri, 23 Mar 2018 21:06:05 +0000 (14:06 -0700)] 
Add zstdmt long range mode graphs

7 years agoupdated graph for dictionary compression
Yann Collet [Fri, 23 Mar 2018 01:44:56 +0000 (18:44 -0700)] 
updated graph for dictionary compression

7 years agoMerge pull request #1069 from facebook/statusLine
Yann Collet [Fri, 23 Mar 2018 01:37:16 +0000 (18:37 -0700)] 
Merge pull request #1069 from facebook/statusLine

restored simple status line during zstd compression

7 years agoupdated benchmark figures 1069/head
Yann Collet [Fri, 23 Mar 2018 01:22:10 +0000 (18:22 -0700)] 
updated benchmark figures

7 years agorestored simple status line during zstd compression
Yann Collet [Fri, 23 Mar 2018 00:49:46 +0000 (17:49 -0700)] 
restored simple status line during zstd compression

the more advanced one, featuring amount of data buffered,
is triggered on `-v`.

7 years agoMerge pull request #1067 from facebook/targetLength
Yann Collet [Thu, 22 Mar 2018 17:38:33 +0000 (10:38 -0700)] 
Merge pull request #1067 from facebook/targetLength

removed limit ZSTD_TARGETLENGTH_MAX

7 years agoMerge pull request #1068 from terrelln/mt-fixes
Yann Collet [Thu, 22 Mar 2018 17:38:17 +0000 (10:38 -0700)] 
Merge pull request #1068 from terrelln/mt-fixes

Fix broken assertion

7 years agofixed fuzz test 1067/head
Yann Collet [Wed, 21 Mar 2018 23:45:15 +0000 (16:45 -0700)] 
fixed fuzz test

7 years agoFix broken assertion 1068/head
Nick Terrell [Wed, 21 Mar 2018 23:20:30 +0000 (16:20 -0700)] 
Fix broken assertion

The `avgJobSize` must not be lower than 256 KB for single-pass mode.
In `zstd.h` we say the minimum value for `ZSTD_p_jobSize` is 1 MB,
so ensure that we always pick a size >= 1 MB.

Found by libFuzzer fuzzer tests with large input limits.

7 years agofixed paramgrill
Yann Collet [Wed, 21 Mar 2018 23:09:15 +0000 (16:09 -0700)] 
fixed paramgrill

7 years agoadded large negative level test case
Yann Collet [Wed, 21 Mar 2018 22:54:44 +0000 (15:54 -0700)] 
added large negative level test case

7 years agoremoved limit ZSTD_TARGETLENGTH_MAX
Yann Collet [Wed, 21 Mar 2018 22:50:05 +0000 (15:50 -0700)] 
removed limit ZSTD_TARGETLENGTH_MAX

this makes it possible to specify extremely large negative compression levels,
achieving the side effect as "no compression".

It will also be possible to define larger targetlength for ultra compression mode.

There is no adverse side effect due to removing this limit.

7 years agoRefined build script
Haydn Trigg [Wed, 21 Mar 2018 22:40:39 +0000 (09:10 +1030)] 
Refined build script

7 years agoMerge pull request #1062 from facebook/advancedDecompress
Yann Collet [Wed, 21 Mar 2018 21:52:13 +0000 (14:52 -0700)] 
Merge pull request #1062 from facebook/advancedDecompress

Advanced decompression API

7 years agoMerge branch 'dev' into advancedDecompress 1062/head
Yann Collet [Wed, 21 Mar 2018 13:08:28 +0000 (06:08 -0700)] 
Merge branch 'dev' into advancedDecompress

7 years agoMerge pull request #1057 from facebook/lrmSettings
Yann Collet [Wed, 21 Mar 2018 12:59:39 +0000 (05:59 -0700)] 
Merge pull request #1057 from facebook/lrmSettings

LRM parameters

7 years agoMerge pull request #1063 from Varunram/manpage
Yann Collet [Wed, 21 Mar 2018 12:36:31 +0000 (05:36 -0700)] 
Merge pull request #1063 from Varunram/manpage

Update man page variables in CMakeLists

7 years agoGeneric Visual Studio 2017 build script
Haydn Trigg [Wed, 21 Mar 2018 12:27:42 +0000 (22:57 +1030)] 
Generic Visual Studio 2017 build script

7 years agoUpdate man page variables in CMakeLists 1063/head
Varunram [Wed, 21 Mar 2018 08:40:42 +0000 (14:10 +0530)] 
Update man page variables in CMakeLists

7 years agofixed minor declaration warning
Yann Collet [Wed, 21 Mar 2018 01:03:56 +0000 (18:03 -0700)] 
fixed minor declaration warning

7 years agoMerge pull request #1059 from terrelln/mt-ldm
Yann Collet [Wed, 21 Mar 2018 00:50:20 +0000 (17:50 -0700)] 
Merge pull request #1059 from terrelln/mt-ldm

Integrate ldm with zstdmt

7 years agofixed legacy test case
Yann Collet [Wed, 21 Mar 2018 00:48:22 +0000 (17:48 -0700)] 
fixed legacy test case

7 years agofixed several comments by @terrelln 1057/head
Yann Collet [Tue, 20 Mar 2018 23:35:14 +0000 (16:35 -0700)] 
fixed several comments by @terrelln

7 years agoMerge pull request #1060 from facebook/compressImpl
Yann Collet [Tue, 20 Mar 2018 23:19:42 +0000 (16:19 -0700)] 
Merge pull request #1060 from facebook/compressImpl

merge bmi2 implementation of encodeSequence into zstd_compress.c

7 years agozstreamtest : slightly decreased time to build dictionary size
Yann Collet [Tue, 20 Mar 2018 23:18:48 +0000 (16:18 -0700)] 
zstreamtest : slightly decreased time to build dictionary size

7 years agoadded test with ZSTD_decompress_generic() + ZSTD_DCtx_refPrefix()
Yann Collet [Tue, 20 Mar 2018 23:16:13 +0000 (16:16 -0700)] 
added test with ZSTD_decompress_generic() + ZSTD_DCtx_refPrefix()

also :
clarified stage condition to accept new parameters,
fixed initializers correspondingly.

7 years agoadded a test with ZSTD_decompress_generic() + ZSTD_DCtx_loadDictionary_byReference()
Yann Collet [Tue, 20 Mar 2018 22:59:25 +0000 (15:59 -0700)] 
added a test with ZSTD_decompress_generic() + ZSTD_DCtx_loadDictionary_byReference()

7 years agoimplemented ZSTD_DCtx_refPrefix*()
Yann Collet [Tue, 20 Mar 2018 22:45:56 +0000 (15:45 -0700)] 
implemented ZSTD_DCtx_refPrefix*()

7 years agoimplemented ZSTD_DCtx_refDDict()
Yann Collet [Tue, 20 Mar 2018 22:43:49 +0000 (15:43 -0700)] 
implemented ZSTD_DCtx_refDDict()

7 years agoQuiet appveyor warnings 1059/head
Nick Terrell [Tue, 20 Mar 2018 22:34:40 +0000 (15:34 -0700)] 
Quiet appveyor warnings

7 years agochanged dictMore for dictContentType
Yann Collet [Tue, 20 Mar 2018 22:13:14 +0000 (15:13 -0700)] 
changed dictMore for dictContentType

which seems clearer to describe what the variable/argument is about.

7 years agoupdated ZSTD_initStaticDDict() prototype
Yann Collet [Tue, 20 Mar 2018 21:52:02 +0000 (14:52 -0700)] 
updated ZSTD_initStaticDDict() prototype

can also specify dictContentType.

7 years agoFix external sequence corner cases
Nick Terrell [Tue, 20 Mar 2018 21:31:43 +0000 (14:31 -0700)] 
Fix external sequence corner cases

* Clear external sequences when we reset the `ZSTD_CCtx`.
* Skip external sequences when a block is too small to compress.

7 years agoimplemented ZSTD_DCtx_loadDictionary*()
Yann Collet [Tue, 20 Mar 2018 20:40:29 +0000 (13:40 -0700)] 
implemented ZSTD_DCtx_loadDictionary*()

this required updating ZSTD_createDDict_advanced()
to accept a dictContentType parameter (raw, full, auto).

7 years agoMerge pull request #1058 from facebook/cctxParams
Yann Collet [Tue, 20 Mar 2018 19:36:12 +0000 (12:36 -0700)] 
Merge pull request #1058 from facebook/cctxParams

updated CCtxParams API

7 years agomerge bmi2 implementation of encodeSequence into zstd_compress.c 1060/head
Yann Collet [Tue, 20 Mar 2018 02:10:31 +0000 (19:10 -0700)] 
merge bmi2 implementation of encodeSequence into zstd_compress.c

7 years agoFix window size for 1 worker + flushing
Nick Terrell [Tue, 20 Mar 2018 01:56:39 +0000 (18:56 -0700)] 
Fix window size for 1 worker + flushing

7 years agoSet ldmParams to 0 when disabled
Nick Terrell [Tue, 20 Mar 2018 01:23:54 +0000 (18:23 -0700)] 
Set ldmParams to 0 when disabled

7 years agoFix corner cases exposed by zstreamtest
Nick Terrell [Tue, 20 Mar 2018 00:54:04 +0000 (17:54 -0700)] 
Fix corner cases exposed by zstreamtest

7 years agoIntegrate ldm with zstdmt
Nick Terrell [Wed, 7 Mar 2018 03:51:21 +0000 (19:51 -0800)] 
Integrate ldm with zstdmt

Integrate ldm into zstdmt by running it in serial and in order in the first
step of each job, in the same place as the hash gets updated. The input
buffer is sized to fit the whole LDM window and 2 full buffers of slack.
Input buffers cannot be reused until the LDM step is done with them.
After the LDM step is finished, the jobs don't actually have access to the
full window, only the overlap.

Tested on a few different multi-GB files with and without sanitizers,
and with different numbers of threads.

7 years agomoved snap to /contrib
Yann Collet [Mon, 19 Mar 2018 23:15:06 +0000 (16:15 -0700)] 
moved snap to /contrib

7 years agoMerge pull request #1015 from elopio/snapcraft
Yann Collet [Mon, 19 Mar 2018 23:14:42 +0000 (16:14 -0700)] 
Merge pull request #1015 from elopio/snapcraft

Add the packaging metadata to build the zstd snap

7 years agoadded docker readme
Yann Collet [Mon, 19 Mar 2018 23:13:12 +0000 (16:13 -0700)] 
added docker readme

7 years agoMerge pull request #1052 from Varunram/dockerfile
Yann Collet [Mon, 19 Mar 2018 23:07:41 +0000 (16:07 -0700)] 
Merge pull request #1052 from Varunram/dockerfile

Add Dockerfile

7 years agoadd a test for unordered parameters
Yann Collet [Mon, 19 Mar 2018 23:02:51 +0000 (16:02 -0700)] 
add a test for unordered parameters

7 years agoPull job/overlap log logic into common function (#1055)
Nick Terrell [Mon, 19 Mar 2018 22:56:36 +0000 (15:56 -0700)] 
Pull job/overlap log logic into common function (#1055)

Prepares for LDM integration by separating the job size and overlap logic
into helper functions.

7 years agoupdated CCtxParams API 1058/head
Yann Collet [Mon, 19 Mar 2018 22:07:26 +0000 (15:07 -0700)] 
updated CCtxParams API

to respect naming convention :
ZSTD_CCtxParams_*()

7 years agomake it possible to express compression parameters in any order
Yann Collet [Mon, 19 Mar 2018 21:41:23 +0000 (14:41 -0700)] 
make it possible to express compression parameters in any order

7 years agoMerge pull request #1056 from terrelln/xxh-parallel
Yann Collet [Mon, 19 Mar 2018 21:13:25 +0000 (14:13 -0700)] 
Merge pull request #1056 from terrelln/xxh-parallel

Move XXH64_update() into worker threads

7 years agoMerge pull request #1049 from facebook/contrib
Yann Collet [Mon, 19 Mar 2018 19:04:27 +0000 (12:04 -0700)] 
Merge pull request #1049 from facebook/contrib

`/contrib` projects as part of CI tests

7 years agoMove XXH64_update() into worker threads 1056/head
Nick Terrell [Thu, 1 Mar 2018 04:10:44 +0000 (20:10 -0800)] 
Move XXH64_update() into worker threads

* Computes the XXH hash in the worker threads.
* Workers get a sequence number and wait until ther number shows up. On
  error, ensures that its sequence is finished, so future threads don't
  get blocked.
* Sets up for ldm integration, which will go in the same spot.

7 years agomake it possible to specify LDM parameters in any order
Yann Collet [Mon, 19 Mar 2018 18:07:04 +0000 (11:07 -0700)] 
make it possible to specify LDM parameters in any order

7 years agoMerge pull request #1053 from Varunram/cmakelists
Yann Collet [Sun, 18 Mar 2018 19:00:24 +0000 (12:00 -0700)] 
Merge pull request #1053 from Varunram/cmakelists

Add missing checks to CMakeLists

7 years agoMerge pull request #1045 from terrelln/mt-single
Yann Collet [Sun, 18 Mar 2018 18:37:35 +0000 (11:37 -0700)] 
Merge pull request #1045 from terrelln/mt-single

Use a single buffer in zstdmt

7 years agoAdd missing checks to CMakeLists;closes #1023 1053/head
Varunram [Sun, 18 Mar 2018 10:18:58 +0000 (15:48 +0530)] 
Add missing checks to CMakeLists;closes #1023

7 years agoAdd Dockerfile 1052/head
Varunram [Sun, 18 Mar 2018 09:23:48 +0000 (14:53 +0530)] 
Add Dockerfile

Dockerfile initially proposed by @gyscos at #880

7 years agoMerge branch 'dev' into mt-single 1045/head
Yann Collet [Sun, 18 Mar 2018 08:06:31 +0000 (01:06 -0700)] 
Merge branch 'dev' into mt-single

7 years agoMerge pull request #1050 from terrelln/restore-loadedDictEnd
Yann Collet [Sun, 18 Mar 2018 08:03:26 +0000 (01:03 -0700)] 
Merge pull request #1050 from terrelln/restore-loadedDictEnd

Restore setting loadedDictEnd

7 years agoRestore setting loadedDictEnd 1050/head
Nick Terrell [Fri, 16 Mar 2018 01:52:38 +0000 (18:52 -0700)] 
Restore setting loadedDictEnd

Setting `loadedDictEnd` was accidently removed from `ZSTD_loadDictionaryContent()`,
which means that dictionary compression will only be able to reference the parts of
the dictionary within the window. The spec allows us to reference the entire
dictionary so long as even one byte is in the window.

`ZSTD_enforceMaxDist()` incorrectly always allowed offsets up to `loadedDictEnd`
beyond the window, even once the dictionary was out of range.

When overflow protection kicked in, the check `current > loadedDictEnd + maxDist`
is incorrect if `loadedDictEnd` isn't reset back to zero. `current` could be reset
below the value, which would incorrectly allow references beyond the window. This
bug is present in `master`, but is very hard to trigger, since it requires both
dictionaries and data which triggers overflow correction.

7 years agomoving LRM parameters out of experimental section
Yann Collet [Fri, 16 Mar 2018 00:22:40 +0000 (17:22 -0700)] 
moving LRM parameters out of experimental section

into "normal" range,
start pinned at 160.

7 years agofixed contrib/adaptive-compression 1049/head
Yann Collet [Fri, 16 Mar 2018 00:10:15 +0000 (17:10 -0700)] 
fixed contrib/adaptive-compression

7 years agoadded /contrib projects to `make all`
Yann Collet [Thu, 15 Mar 2018 23:39:59 +0000 (16:39 -0700)] 
added /contrib projects to `make all`

7 years agofixed seekable format example
Yann Collet [Thu, 15 Mar 2018 23:29:28 +0000 (16:29 -0700)] 
fixed seekable format example

7 years agoremoved LRM exploratory experiment
Yann Collet [Thu, 15 Mar 2018 23:26:08 +0000 (16:26 -0700)] 
removed LRM exploratory experiment

7 years agoUse a single buffer in zstdmt
Nick Terrell [Wed, 28 Feb 2018 04:09:18 +0000 (20:09 -0800)] 
Use a single buffer in zstdmt

Summary:
Allocate a single input buffer large enough to house each job, as well as
enough space for the IO thread to write 2 extra buffers. One goes in the
`POOL` queue, and one to fill, and then block on a full `POOL` queue.
Since we can't overlap with the prefix, we allocate space for 3 extra
input buffers.

Test Plan:
* CI
* With and without ASAN/UBSAN run zstdmt with different number of threads
  on two large binaries, and verify that their checksums match.
* Test on the tip of the zstdmt ldm integration.

Reviewers: cyan

Differential Revision: https://phabricator.intern.facebook.com/D7284007

Tasks: T25664120

7 years agoMerge pull request #1047 from facebook/hufCompress
Yann Collet [Thu, 15 Mar 2018 21:14:03 +0000 (14:14 -0700)] 
Merge pull request #1047 from facebook/hufCompress

 removed huf_compress_impl.h

7 years agoMerge pull request #1037 from terrelln/extern-seq
Yann Collet [Thu, 15 Mar 2018 18:56:43 +0000 (11:56 -0700)] 
Merge pull request #1037 from terrelln/extern-seq

Expose reference external sequence API

7 years agoExpose reference external sequence API
Nick Terrell [Thu, 15 Mar 2018 00:26:31 +0000 (17:26 -0700)] 
Expose reference external sequence API

Summary:
* Expose the reference external sequences API for zstdmt.
  Allows external sequences of any length, which get split when necessary.
* Reset the LDM window when the context is reset.
* Store the maximum number of LDM sequences.
* Sequence generation now returns the number of last literals.
* Fix sequence generation to not throw out the last literals when blocks of
  more than 1 MB are encountered.

Expose reference external sequence API

* Expose the reference external sequences API for zstdmt.
* Allows external sequences of any length, which get split when necessary.
* Reset the LDM window when the context is reset.
* Store the maximum number of LDM sequences.
* Sequence generation now returns the number of last literals.
* Fix sequence generation to not throw out the last literals when blocks of
  more than 1 MB are encountered.

Test Plan:
* CI
* Test the zstdmt ldm integration stacked on top of this diff

Reviewers: cyan

Differential Revision: https://phabricator.intern.facebook.com/D7283968

Tasks: T25664120

7 years agoMerge remote-tracking branch 'upstream/dev' into extern-seq 1037/head
Nick Terrell [Thu, 15 Mar 2018 00:26:31 +0000 (17:26 -0700)] 
Merge remote-tracking branch 'upstream/dev' into extern-seq

* upstream/dev:
  Fix overflow protection with wlog=31

7 years agoMerge pull request #1035 from terrelln/31-overflow
Yann Collet [Thu, 15 Mar 2018 00:20:28 +0000 (17:20 -0700)] 
Merge pull request #1035 from terrelln/31-overflow

Fix overflow protection with wlog=31