1
0
mirror of https://github.com/facebook/zstd.git synced 2025-07-05 07:00:22 +02:00
Commit Graph

1133 Commits

Author SHA1 Message Date
013434e1e4 Add another API function to compress with existing CCTX 2020-11-16 10:49:16 -05:00
c44ce29013 More adjustments to improve code clarity 2020-11-16 10:49:16 -05:00
48f67da854 Pull compressStream2() transparent initialization into its own function 2020-11-16 10:49:16 -05:00
c86151f53c Add initial support for new ZSTD_Sequence mode 2020-11-16 10:49:16 -05:00
e0f26afce9 Add sequence compression format param 2020-11-16 10:49:16 -05:00
f51af9a609 Always ensure sequenceRange updates properly, add more error forwarding 2020-11-16 10:49:16 -05:00
1a449688fd Various minor logical refactors to improve clarity 2020-11-16 10:49:16 -05:00
e5fe485dcc Fix cSize calculation for noCompressBlocks 2020-11-16 10:49:16 -05:00
6145ebb400 Rebased, roundtrips silesia.tar 2020-11-16 10:49:16 -05:00
b5b61cc216 Refactor for better debugging info 2020-11-16 10:49:16 -05:00
293fad6b45 Corrections and edge-case fixes to be able to roundtrip dickens 2020-11-16 10:49:16 -05:00
7eb6fa7be4 Multi-block compression scaffolding - works on single-block files 2020-11-16 10:49:16 -05:00
75b01f34b9 Add support for uncompressible blocks 2020-11-16 10:49:16 -05:00
e04da68157 Enable usage of ZSTD_sequenceRange for single-block compression 2020-11-16 10:49:16 -05:00
337fac216d Add logic to handle ZSTD_sequenceRange 2020-11-16 10:49:16 -05:00
85822ddd53 Add last literals handling like getSequences() 2020-11-16 10:49:16 -05:00
2cff8df1a2 Pull block compression out of main compressSequences() function 2020-11-16 10:49:16 -05:00
cfced9344a Implement ZSTD_updateSequenceRange 2020-11-16 10:49:16 -05:00
b116e1f211 Modify SequenceRange to have posInSequence 2020-11-16 10:49:16 -05:00
d99b675112 Add function definition for sequenceRange updater 2020-11-16 10:49:16 -05:00
74e95c05cc Add ZSTD_SequenceRange to count ranges in array of ZSTD_Sequence 2020-11-16 10:49:16 -05:00
89f3848310 Add support for repcodes 2020-11-16 10:49:16 -05:00
3e930fd044 Code cleanup, add debuglog statments 2020-11-16 10:49:16 -05:00
086513b5b9 Implement first pass at compressSequences() 2020-11-16 10:49:16 -05:00
a9327b1e9b Add initial function prototype for ZSTD_compressSequences_ext (to be renamed later) 2020-11-16 10:33:35 -05:00
9d936d61d2 Reduce number of memcpy() calls 2020-11-13 19:43:30 -05:00
be4ac6c5bc Use existing repcode update function to implement updates 2020-11-12 16:51:12 -05:00
674c9b9235 Add in proper block repcode histories 2020-11-12 15:34:37 -05:00
06c7f14066 Let block reps persist 2020-11-12 12:24:44 -05:00
396275068c Fix incorrect repcode setting 2020-11-12 11:57:01 -05:00
1a8af0de73 Improve unit test 2020-11-12 11:09:09 -05:00
4d4fd2c55f Overhaul repcode handling logic 2020-11-12 10:59:35 -05:00
sen
f62edf0fe9 Merge pull request #2381 from senhuang42/expand_sequence_extraction_api
Add enum to define ZSTD_Sequence type and update sequence extraction API
2020-11-06 13:00:31 -05:00
7d1dea070c Update unit tests 2020-11-06 11:10:37 -05:00
779df995c6 Implement mergeGeneratedSequences() 2020-11-06 10:55:46 -05:00
51abd58208 Rename getSequences() to generateSequences() 2020-11-06 10:53:22 -05:00
eac309c71b Add ZSTD_getDictID_fromCDict function to experimental section 2020-11-04 11:37:37 +00:00
f782cac3d4 Change block delimiter removing to linear time approach 2020-11-02 17:06:20 -05:00
3434049c1f Use ZSTD_memmove() instead of memmove() 2020-11-02 11:43:19 -05:00
d4d0346b40 Update name of enum, clarify documentation 2020-11-02 11:38:17 -05:00
e6178f837f Revert unnecessary seqCollector adjustment 2020-11-02 10:59:20 -05:00
e8501e00b8 Fix incorrect index increment in merge algorithm 2020-11-02 10:58:41 -05:00
a36fdada57 Add algorithm to remove all delimiters 2020-11-02 10:46:52 -05:00
435a3a0428 Update seqCollector definition 2020-11-02 10:19:26 -05:00
3327932609 Update ZSTD_getSequences function signature 2020-11-02 10:17:59 -05:00
7205e609a9 Merge pull request #2354 from terrelln/stable-buffer
Add ZSTD_c_stable{In,Out}Buffer and optimize when set
2020-10-30 15:06:56 -07:00
sen
c37c714ef1 Merge pull request #2376 from senhuang42/clarify_sequence_extraction_api
Refine external ZSTD_Sequence API
2020-10-30 15:47:25 -04:00
d4e021fe35 [lib] Avoid allocating the input buffer when ZSTD_c_stableInBuffer is set
We don't use it when we have a stable input buffer, so don't allocate
it. I had to slightly modify `ZSTD_copyCCtx()` by storing the
`ZSTD_buffered_policy_e` in the `ZSTD_CCtx`, since `inBuffSize > 0` is
no longer the correct signal for the buffered mode.
2020-10-30 10:55:34 -07:00
24f72789e2 [lib] Skip the input window buffer when ZSTD_c_stableInBuffer is set
Compress directly from the `ZSTD_inBuffer`. We still allocate the input
buffer. A following commit will remove that allocation.
2020-10-30 10:55:34 -07:00
fcf81cee5e [lib] Avoid allocating output buffer when ZSTD_c_stableOutBuffer is set
We compress directly to the `ZSTD_outBuffer` so we don't need to
allocate it.
2020-10-30 10:55:34 -07:00