1796 Commits

Author SHA1 Message Date
senhuang42
5c41490bfe Use pre-defined constants 2020-12-21 11:52:05 -05:00
senhuang42
7e11bd012b Implement skippable frame function 2020-12-21 11:13:22 -05:00
Yann Collet
a7cb4af573 added emphasis on the alignment condition of workspace
and made it a programming mistake (`assert()`)
rather than a runtime error.
2020-12-18 15:04:09 -08:00
Nick Terrell
ae85676d44 Fix alignment of scratchBuffer in HUF_compressWeights()
The scratch buffer must be 4-byte aligned. This causes test failures in
32-bit systems, where the stack isn't aligned.

Fixes Issue #2428.
2020-12-17 14:30:27 -08:00
Yann Collet
0b39531d75 moving all references to release branch
was previously `master`
2020-12-16 23:00:35 -08:00
Yann Collet
b8c3a473ec
Merge pull request #2420 from terrelln/huf-comment
[huf_compress] Refactor and comment HUF_buildCTable()
2020-12-14 16:14:07 -08:00
W. Felix Handte
9dab03db90 Create Enum to Represent Static/Dynamic Allocation Distinction in cwksp 2020-12-09 14:57:37 -05:00
W. Felix Handte
db9e73cb07 Don't ASAN-Poison Statically-Allocated Workspaces
Addresses #2286.
2020-12-09 13:00:47 -05:00
Nick Terrell
1bbcf07bd5 [huf_compress] Refactor and comment HUF_buildCTable()
Comment and refactor `HUF_buildCTable()` and the helper functions
it calls as I read and understand the code. Hopefully this refactor
makes the code a bit more clear.
2020-12-08 13:57:01 -08:00
Yann Collet
b86e3c9304
Merge pull request #2415 from facebook/fix_aliasing
fix gcc-10 strict aliasing warnings
2020-12-04 21:30:57 -08:00
Yann Collet
6132df8dd3 fix gcc-10 strict aliasing warnings
by exposing HUF_CElt declaration.
2020-12-04 16:43:19 -08:00
Yann Collet
68c14bdff2 minor speed improvement to HUF_readCTable()
faster by ~+1-2%
2020-12-04 16:33:39 -08:00
Nick Terrell
c238db046f
Merge pull request #2414 from terrelln/mt-progress
[lib] Ensure that multithreaded compression always makes some progress
2020-12-04 16:30:08 -08:00
Nick Terrell
4c58cb8383 [lib] Ensure that multithreaded compression always makes some progress 2020-12-03 20:25:14 -08:00
Nick Terrell
6672689e7e
Merge pull request #2406 from terrelln/linux-wrapper-api
[linux] Add the linux wrapper API
2020-12-02 16:49:03 -08:00
Nick Terrell
894ae36675
Merge pull request #2390 from animalize/clamp_level
Clamp compression level
2020-12-02 14:35:58 -08:00
senhuang42
2cbd038528 Move max nb seq check to per-block 2020-12-02 12:11:32 -05:00
Nick Terrell
3cda5fae77 [minor][lib] Remove double semicolon 2020-12-02 01:08:08 -08:00
senhuang42
3efe9c902b Add sequence nb validation to compressSequences(), adjust minMatch comparisons 2020-12-01 10:54:45 -05:00
senhuang42
4c5f337248 Use cctx's minMatch instead of global MINMATCH, make fuzzer use validation 2020-11-30 15:41:20 -05:00
sen
c5fbd55dac
Merge pull request #2387 from senhuang42/compress_sequence_API
[RFC] New sequence compression API
2020-11-20 16:54:20 -05:00
senhuang42
7742f076b4 Add experimental param for sequence validation 2020-11-20 11:57:41 -05:00
senhuang42
0e32928b7d Remove unnecessary repcode backup, apply style choices, use function pointer 2020-11-20 11:02:19 -05:00
sen
e924a0fa51
Explicit cast for visual warnings
Github has automatic commits now! Cool

Co-authored-by: Nick Terrell <nickrterrell@gmail.com>
2020-11-19 17:32:40 -05:00
senhuang42
dcbbf7c09f Unroll isRLE loop 2020-11-19 12:38:13 -05:00
senhuang42
05c0229668 Clean up visual conversion warnings 2020-11-18 15:36:29 -05:00
senhuang42
d6d7ba2a1f Modification to offset validation to include entire sequence 2020-11-17 10:13:22 -05:00
senhuang42
8f3136a9c7 Fix assert edge case, improve documentation in zstd.h 2020-11-16 18:05:35 -05:00
senhuang42
f6baad87d6 Fix warnings and make validation enabled by default 2020-11-16 12:00:06 -05:00
senhuang42
55b90ef010 Fix unit tests to agree with new changes 2020-11-16 11:36:37 -05:00
senhuang42
7f563b0519 Add new sequence format as an experimental CCtx param 2020-11-16 10:49:17 -05:00
senhuang42
347824ad73 Overhaul logic to simplify, add in proper validations, fix match splitting 2020-11-16 10:49:17 -05:00
senhuang42
46824cb018 Add new sequence compress api params to cctx 2020-11-16 10:49:17 -05:00
senhuang42
48405b4633 Fix srcSize=0 edge case 2020-11-16 10:49:17 -05:00
senhuang42
022e6d81e7 Fix literals length calculation 2020-11-16 10:49:17 -05:00
senhuang42
dad20b5ccb Remove dstCapacity error check 2020-11-16 10:49:17 -05:00
senhuang42
b8e16a2057 Remove extraneous function in this API 2020-11-16 10:49:17 -05:00
senhuang42
f29507c4fc Add check comparing offset to window size 2020-11-16 10:49:17 -05:00
senhuang42
7a6e46a92f Fix MSAN errors 2020-11-16 10:49:17 -05:00
senhuang42
cc2642bd17 Address edge case with endPosInSequence 2020-11-16 10:49:17 -05:00
senhuang42
fd10007174 Change debug levels to appropriate ones 2020-11-16 10:49:17 -05:00
senhuang42
2db8441245 Add RLE support 2020-11-16 10:49:17 -05:00
senhuang42
dfef298336 Fix various build warnings 2020-11-16 10:49:17 -05:00
senhuang42
2bbdddf24e Add test case to roundtrip using ZSTD_getSequences() and ZSTD_compressSequences() 2020-11-16 10:49:16 -05:00
senhuang42
5fd69f8173 Add documentation for new api functions 2020-11-16 10:49:16 -05:00
senhuang42
e8b7fdb64b Refactor for enhanced code clarity 2020-11-16 10:49:16 -05:00
senhuang42
c675fb46f1 Rename internal function compressSequences(), and promote new *_ext() functions to their actual name 2020-11-16 10:49:16 -05:00
senhuang42
013434e1e4 Add another API function to compress with existing CCTX 2020-11-16 10:49:16 -05:00
senhuang42
c44ce29013 More adjustments to improve code clarity 2020-11-16 10:49:16 -05:00
senhuang42
48f67da854 Pull compressStream2() transparent initialization into its own function 2020-11-16 10:49:16 -05:00