Commit Graph

8398 Commits (5c0a3489a5c1ce4b7b3a575e5669e81a4f6f4f25)

Author SHA1 Message Date
sen 4e809dd572
Merge pull request #2395 from senhuang42/is_rle_speedup
10x speedup for ZSTD_isRLE()
2020-11-19 18:26:42 -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 3c4454769b Improve documentation on ZSTD_compressSequences() 2020-11-18 09:52:24 -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 3d26615c84 Adjust unit tests to agree with new sequence generation API 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
senhuang42 c86151f53c Add initial support for new ZSTD_Sequence mode 2020-11-16 10:49:16 -05:00
senhuang42 e0f26afce9 Add sequence compression format param 2020-11-16 10:49:16 -05:00
senhuang42 f51af9a609 Always ensure sequenceRange updates properly, add more error forwarding 2020-11-16 10:49:16 -05:00
senhuang42 1a449688fd Various minor logical refactors to improve clarity 2020-11-16 10:49:16 -05:00
senhuang42 e5fe485dcc Fix cSize calculation for noCompressBlocks 2020-11-16 10:49:16 -05:00
senhuang42 6145ebb400 Rebased, roundtrips silesia.tar 2020-11-16 10:49:16 -05:00
senhuang42 b5b61cc216 Refactor for better debugging info 2020-11-16 10:49:16 -05:00
senhuang42 293fad6b45 Corrections and edge-case fixes to be able to roundtrip dickens 2020-11-16 10:49:16 -05:00
senhuang42 7eb6fa7be4 Multi-block compression scaffolding - works on single-block files 2020-11-16 10:49:16 -05:00
senhuang42 75b01f34b9 Add support for uncompressible blocks 2020-11-16 10:49:16 -05:00
senhuang42 e04da68157 Enable usage of ZSTD_sequenceRange for single-block compression 2020-11-16 10:49:16 -05:00
senhuang42 337fac216d Add logic to handle ZSTD_sequenceRange 2020-11-16 10:49:16 -05:00
senhuang42 85822ddd53 Add last literals handling like getSequences() 2020-11-16 10:49:16 -05:00
senhuang42 2cff8df1a2 Pull block compression out of main compressSequences() function 2020-11-16 10:49:16 -05:00
senhuang42 cfced9344a Implement ZSTD_updateSequenceRange 2020-11-16 10:49:16 -05:00
senhuang42 b116e1f211 Modify SequenceRange to have posInSequence 2020-11-16 10:49:16 -05:00
senhuang42 d99b675112 Add function definition for sequenceRange updater 2020-11-16 10:49:16 -05:00
senhuang42 74e95c05cc Add ZSTD_SequenceRange to count ranges in array of ZSTD_Sequence 2020-11-16 10:49:16 -05:00
senhuang42 89f3848310 Add support for repcodes 2020-11-16 10:49:16 -05:00
senhuang42 3e930fd044 Code cleanup, add debuglog statments 2020-11-16 10:49:16 -05:00