zstd-native-ruby 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE +4 -2
- data/README.md +50 -23
- data/ext/zstd_native/Makefile +269 -0
- data/ext/zstd_native/extconf.rb +37 -0
- data/{vendor → ext/zstd_native}/zstd/CONTRIBUTING.md +1 -6
- data/{vendor → ext/zstd_native}/zstd/Makefile +6 -5
- data/{vendor → ext/zstd_native}/zstd/README.md +35 -42
- data/ext/zstd_native/zstd/build/cmake/CMakeLists.txt +228 -0
- data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/AddZstdCompilationFlags.cmake +19 -21
- data/{vendor → ext/zstd_native}/zstd/build/cmake/README.md +0 -9
- data/{vendor → ext/zstd_native}/zstd/build/cmake/lib/CMakeLists.txt +6 -9
- data/{vendor → ext/zstd_native}/zstd/build/meson/lib/meson.build +0 -4
- data/{vendor → ext/zstd_native}/zstd/build/meson/meson.build +2 -1
- data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/main.c +2 -3
- data/{vendor → ext/zstd_native}/zstd/contrib/largeNbDicts/largeNbDicts.c +0 -2
- data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/linux_zstd.h +0 -166
- data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_compress_module.c +0 -49
- data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_decompress_module.c +0 -36
- data/{vendor → ext/zstd_native}/zstd/contrib/premake/zstd.lua +0 -1
- data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Logging.h +0 -1
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/Makefile +1 -3
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/parallel_compression.c +84 -124
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/parallel_processing.c +5 -2
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/tests/Makefile +2 -22
- data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/tests/seekable_tests.c +0 -12
- data/{vendor → ext/zstd_native}/zstd/doc/zstd_compression_format.md +2 -3
- data/{vendor → ext/zstd_native}/zstd/doc/zstd_manual.html +24 -31
- data/{vendor → ext/zstd_native}/zstd/lib/Makefile +9 -9
- data/{vendor → ext/zstd_native}/zstd/lib/README.md +4 -23
- data/{vendor → ext/zstd_native}/zstd/lib/common/bits.h +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/common/compiler.h +6 -24
- data/ext/zstd_native/zstd/lib/common/debug.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/entropy_common.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/error_private.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/fse_decompress.o +0 -0
- data/ext/zstd_native/zstd/lib/common/pool.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/portability_macros.h +0 -19
- data/{vendor → ext/zstd_native}/zstd/lib/common/threading.c +2 -16
- data/ext/zstd_native/zstd/lib/common/threading.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/xxhash.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_common.c +0 -9
- data/ext/zstd_native/zstd/lib/common/zstd_common.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_internal.h +2 -4
- data/{vendor → ext/zstd_native}/zstd/lib/compress/fse_compress.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/hist.c +191 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/hist.h +0 -4
- data/ext/zstd_native/zstd/lib/compress/hist.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/huf_compress.c +0 -1
- data/{vendor → ext/zstd_native}/zstd/lib/compress/huf_compress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress.c +16 -535
- data/ext/zstd_native/zstd/lib/compress/zstd_compress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_internal.h +3 -3
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_literals.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_sequences.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_compress_superblock.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_double_fast.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_fast.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_lazy.c +3 -47
- data/ext/zstd_native/zstd/lib/compress/zstd_lazy.o +0 -0
- data/ext/zstd_native/zstd/lib/compress/zstd_ldm.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_opt.c +10 -2
- data/ext/zstd_native/zstd/lib/compress/zstd_opt.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_preSplit.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/compress/zstdmt_compress.c +14 -15
- data/ext/zstd_native/zstd/lib/compress/zstdmt_compress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/huf_decompress.c +48 -57
- data/ext/zstd_native/zstd/lib/decompress/huf_decompress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/huf_decompress_amd64.S +18 -182
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_ddict.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress_block.c +65 -167
- data/ext/zstd_native/zstd/lib/decompress/zstd_decompress_block.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/cover.c +67 -98
- data/ext/zstd_native/zstd/lib/dictBuilder/cover.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/divsufsort.c +4 -4
- data/ext/zstd_native/zstd/lib/dictBuilder/divsufsort.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/fastcover.c +40 -39
- data/ext/zstd_native/zstd/lib/dictBuilder/fastcover.o +0 -0
- data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/zdict.c +14 -18
- data/ext/zstd_native/zstd/lib/dictBuilder/zdict.o +0 -0
- data/ext/zstd_native/zstd/lib/dll/example/build_package.bat +20 -0
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v01.c +5 -6
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v03.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v04.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v05.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v06.c +1 -1
- data/{vendor → ext/zstd_native}/zstd/lib/libzstd.mk +1 -4
- data/{vendor → ext/zstd_native}/zstd/lib/libzstd.pc.in +0 -1
- data/{vendor → ext/zstd_native}/zstd/lib/zstd.h +30 -41
- data/{vendor → ext/zstd_native}/zstd/programs/Makefile +8 -8
- data/{vendor → ext/zstd_native}/zstd/programs/README.md +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/benchzstd.c +62 -51
- data/{vendor → ext/zstd_native}/zstd/programs/benchzstd.h +2 -2
- data/{vendor → ext/zstd_native}/zstd/programs/dibio.c +5 -12
- data/{vendor → ext/zstd_native}/zstd/programs/fileio.c +152 -405
- data/{vendor → ext/zstd_native}/zstd/programs/fileio.h +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/fileio_types.h +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/timefn.c +1 -3
- data/{vendor → ext/zstd_native}/zstd/programs/util.c +65 -153
- data/{vendor → ext/zstd_native}/zstd/programs/util.h +2 -4
- data/{vendor → ext/zstd_native}/zstd/programs/zstd.1 +37 -225
- data/{vendor → ext/zstd_native}/zstd/programs/zstd.1.md +14 -14
- data/{vendor → ext/zstd_native}/zstd/programs/zstdcli.c +65 -82
- data/{vendor → ext/zstd_native}/zstd/programs/zstdcli_trace.c +1 -2
- data/{vendor → ext/zstd_native}/zstd/programs/zstdgrep.1 +1 -1
- data/{vendor → ext/zstd_native}/zstd/programs/zstdless.1 +1 -1
- data/{vendor → ext/zstd_native}/zstd/tests/Makefile +4 -8
- data/{vendor → ext/zstd_native}/zstd/tests/automated_benchmarking.py +2 -2
- data/{vendor/zstd/tests/largeDictionary.c → ext/zstd_native/zstd/tests/bigdict.c} +18 -16
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/help.sh.stdout.glob +1 -1
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/platform.sh +0 -11
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multi-threaded.sh +0 -7
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multi-threaded.sh.stderr.exact +0 -10
- data/ext/zstd_native/zstd/tests/cli-tests/dict-builder/no-inputs.sh.stderr.exact +5 -0
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-dir-without-write-perm.sh.stderr.exact +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh.stderr.exact} +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh.stderr.exact} +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh.stderr.exact} +0 -4
- data/{vendor/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh.stderr.glob → ext/zstd_native/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh.stderr.exact} +0 -4
- data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/run.py +1 -2
- data/{vendor → ext/zstd_native}/zstd/tests/fullbench.c +0 -1
- data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_helpers.c +3 -2
- data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_helpers.h +0 -1
- data/{vendor → ext/zstd_native}/zstd/tests/fuzzer.c +0 -335
- data/ext/zstd_native/zstd/tests/largeDictionary.c +128 -0
- data/{vendor → ext/zstd_native}/zstd/tests/legacy.c +0 -2
- data/{vendor → ext/zstd_native}/zstd/tests/longmatch.c +17 -38
- data/{vendor → ext/zstd_native}/zstd/tests/paramgrill.c +3 -3
- data/{vendor → ext/zstd_native}/zstd/tests/playTests.sh +34 -35
- data/{vendor → ext/zstd_native}/zstd/tests/regression/method.c +3 -3
- data/{vendor → ext/zstd_native}/zstd/tests/zstreamtest.c +1 -1
- data/ext/zstd_native/zstd_native.c +852 -0
- data/ext/zstd_native/zstd_native.o +0 -0
- data/ext/zstd_native/zstd_native.so +0 -0
- data/lib/zstd_native/version.rb +3 -0
- data/lib/zstd_native/zstd_native.so +0 -0
- data/lib/zstd_native.rb +6 -0
- metadata +647 -657
- data/CLAUDE.md +0 -101
- data/ext/zstd_ruby/extconf.rb +0 -35
- data/ext/zstd_ruby/zstd_ruby.c +0 -221
- data/lib/zstd_ruby.rb +0 -68
- data/vendor/zstd/CMakeLists.txt +0 -11
- data/vendor/zstd/build/cmake/CMakeLists.txt +0 -81
- data/vendor/zstd/build/cmake/CMakeModules/ZstdBuild.cmake +0 -42
- data/vendor/zstd/build/cmake/CMakeModules/ZstdDependencies.cmake +0 -30
- data/vendor/zstd/build/cmake/CMakeModules/ZstdOptions.cmake +0 -68
- data/vendor/zstd/build/cmake/CMakeModules/ZstdPackage.cmake +0 -42
- data/vendor/zstd/build/cmake/CMakeModules/ZstdVersion.cmake +0 -31
- data/vendor/zstd/lib/common/debug.o +0 -0
- data/vendor/zstd/lib/common/pool.o +0 -0
- data/vendor/zstd/lib/common/threading.o +0 -0
- data/vendor/zstd/lib/common/zstd_common.o +0 -0
- data/vendor/zstd/lib/compress/hist.c +0 -446
- data/vendor/zstd/lib/compress/hist.o +0 -0
- data/vendor/zstd/lib/compress/zstd_compress.o +0 -0
- data/vendor/zstd/lib/compress/zstd_compress_superblock.o +0 -0
- data/vendor/zstd/lib/compress/zstd_double_fast.o +0 -0
- data/vendor/zstd/lib/compress/zstd_fast.o +0 -0
- data/vendor/zstd/lib/compress/zstd_lazy.o +0 -0
- data/vendor/zstd/lib/compress/zstd_ldm.o +0 -0
- data/vendor/zstd/lib/compress/zstd_opt.o +0 -0
- data/vendor/zstd/lib/compress/zstdmt_compress.o +0 -0
- data/vendor/zstd/lib/decompress/huf_decompress.o +0 -0
- data/vendor/zstd/lib/decompress/zstd_decompress_block.o +0 -0
- data/vendor/zstd/lib/dll/example/build_package.bat +0 -55
- data/vendor/zstd/lib/install_oses.mk +0 -17
- data/vendor/zstd/tests/cli-tests/bin/unzstd +0 -1
- data/vendor/zstd/tests/cli-tests/bin/zstdcat +0 -1
- data/vendor/zstd/tests/cli-tests/determinism/basic.sh +0 -36
- data/vendor/zstd/tests/cli-tests/determinism/basic.sh.stderr.exact +0 -0
- data/vendor/zstd/tests/cli-tests/determinism/basic.sh.stdout.exact +0 -880
- data/vendor/zstd/tests/cli-tests/determinism/multithread.sh +0 -45
- data/vendor/zstd/tests/cli-tests/determinism/multithread.sh.stderr.exact +0 -0
- data/vendor/zstd/tests/cli-tests/determinism/multithread.sh.stdout.exact +0 -260
- data/vendor/zstd/tests/cli-tests/determinism/reuse.sh +0 -44
- data/vendor/zstd/tests/cli-tests/determinism/reuse.sh.stderr.exact +0 -0
- data/vendor/zstd/tests/cli-tests/determinism/reuse.sh.stdout.exact +0 -19
- data/vendor/zstd/tests/cli-tests/determinism/setup +0 -5
- data/vendor/zstd/tests/cli-tests/determinism/setup_once +0 -30
- data/vendor/zstd/tests/cli-tests/dict-builder/no-inputs.sh.stderr.exact +0 -5
- data/vendor/zstd/tests/test_process_substitution.bash +0 -92
- /data/{vendor → ext/zstd_native}/zstd/CHANGELOG +0 -0
- /data/{vendor → ext/zstd_native}/zstd/CODE_OF_CONDUCT.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/COPYING +0 -0
- /data/{vendor → ext/zstd_native}/zstd/LICENSE +0 -0
- /data/{vendor → ext/zstd_native}/zstd/Package.swift +0 -0
- /data/{vendor → ext/zstd_native}/zstd/SECURITY.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/TESTING.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/LICENSE +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/fullbench/fullbench.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/fuzzer/fuzzer.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/zstd/zstd.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/zstd.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2008/zstdlib/zstdlib.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/CompileAsCpp.props +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/datagen/datagen.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/fullbench/fullbench.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/fuzzer/fuzzer.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/libzstd/libzstd.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/libzstd-dll/libzstd-dll.rc +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/libzstd-dll/libzstd-dll.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/zstd/zstd.rc +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/zstd/zstd.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS2010/zstd.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2010.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2012.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2013.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2015.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017Community.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017Enterprise.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VS2017Professional.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.VSPreview.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/VS_scripts/build.generic.cmd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/FindLibLZ4.cmake +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/GetZstdLibraryVersion.cmake +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/CMakeModules/JoinPaths.cmake +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/contrib/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/contrib/gen_html/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/contrib/pzstd/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/lib/cmake_uninstall.cmake.in +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/programs/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/tests/CMakeLists.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/cmake/zstdConfig.cmake.in +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/GetZstdLibraryVersion.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/InstallSymlink.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/contrib/gen_html/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/contrib/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/contrib/pzstd/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/meson_options.txt +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/programs/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/tests/meson.build +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/meson/tests/valgrindTest.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/build_decoder_test.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/build_library_test.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/combine.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/combine.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/create_single_file_decoder.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/create_single_file_library.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/emscripten.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/roundtrip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/shell.html +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/simple.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/testcard-dxt1.inl +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/testcard-zstd.inl +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/examples/testcard.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/zstd-in.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/build/single_file_libs/zstddeclib-in.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/fullbench/fullbench.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/fuzzer/fuzzer.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/zstd/zstd.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/zstd.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/VS2005/zstdlib/zstdlib.vcproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/cleanTabs +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/diagnose_corruption/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/diagnose_corruption/check_flipped_bits.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/docker/Dockerfile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/docker/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/sequence_producer.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/externalSequenceProducer/sequence_producer.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/freestanding_lib/freestanding.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/gen-zstd-manual.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/gen_html/gen_html.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/largeNbDicts/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/largeNbDicts/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/btrfs-benchmark.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/btrfs-extract-benchmark.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/decompress_sources.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/linux.mk +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/mem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/squashfs-benchmark.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/compiler.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/errno.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/kernel.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/limits.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/math64.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/module.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/printk.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/stddef.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/swab.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/types.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/unaligned.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/include/linux/xxhash.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/macro-test.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/static_test.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/test/test.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_common_module.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/linux-kernel/zstd_deps.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/match_finders/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/match_finders/zstd_edist.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/match_finders/zstd_edist.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/premake/premake4.lua +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/ErrorHolder.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Options.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Options.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Pzstd.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/Pzstd.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/SkippableFrame.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/SkippableFrame.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/images/Cspeed.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/images/Dspeed.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/main.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/OptionsTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/PzstdTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/RoundTrip.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/test/RoundTripTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Buffer.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/FileSystem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Likely.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Portability.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/Range.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/ResourcePool.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/ScopeGuard.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/ThreadPool.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/WorkQueue.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/BufferTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/RangeTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/ResourcePoolTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/ScopeGuardTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/ThreadPoolTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/pzstd/utils/test/WorkQueueTest.cpp +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/recovery/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/recovery/recover_directory.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/seekable_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/seekable_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/examples/seekable_decompression_mem.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstd_seekable.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstd_seekable_compression_format.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstdseek_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seekable_format/zstdseek_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seqBench/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/seqBench/seqBench.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/contrib/snap/snapcraft.yaml +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/decompressor_errata.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/decompressor_permissive.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/harness.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/zstd_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/educational_decoder/zstd_decompress.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/CSpeed2.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/DCspeed5.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/DSpeed3.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/cdict_v136.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/dict-cr.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/dict-cs.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/dict-ds.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/zstd_cdict_v1_3_5.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/doc/images/zstd_logo86.png +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/common.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/dictionary_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/dictionary_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/multiple_simple_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/multiple_streaming_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/simple_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/simple_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_compression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_compression_thread_pool.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_decompression.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/examples/streaming_memory_usage.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/allocations.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/bitstream.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/cpu.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/debug.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/debug.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/entropy_common.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/error_private.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/error_private.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/fse.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/fse_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/huf.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/mem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/pool.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/pool.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/threading.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/xxhash.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/xxhash.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_deps.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/common/zstd_trace.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/clevels.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/fse_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_literals.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_literals.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_sequences.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_sequences.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_superblock.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_compress_superblock.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_cwksp.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_double_fast.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_double_fast.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_fast.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_fast.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_lazy.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_ldm.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_ldm.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_ldm_geartab.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_opt.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_preSplit.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstd_preSplit.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/compress/zstdmt_compress.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_ddict.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_ddict.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress_block.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/decompress/zstd_decompress_internal.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff_common.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/deprecated/zbuff_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/cover.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dictBuilder/divsufsort.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/fullbench-dll.sln +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/dll/example/fullbench-dll.vcxproj +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_legacy.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v01.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v02.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v02.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v03.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v04.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v05.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v06.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v07.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/legacy/zstd_v07.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/module.modulemap +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/zdict.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/lib/zstd_errors.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/benchfn.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/benchfn.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/datagen.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/datagen.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/dibio.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/fileio_asyncio.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/fileio_asyncio.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/fileio_common.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/lorem.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/lorem.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/platform.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/timefn.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/verrsrc.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/zstd.rc +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/zstd32.res +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/windres/zstd64.res +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdcli_trace.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdgrep +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdgrep.1.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdless +0 -0
- /data/{vendor → ext/zstd_native}/zstd/programs/zstdless.1.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/DEPRECATED-test-zstd-speed.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/checkTag.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/check_size.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/args.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/args.sh.exit +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/args.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/help.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/memlimit.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/memlimit.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/memlimit.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/output_dir.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/output_dir.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/output_dir.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/version.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/basic/version.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/cmp_size +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/datagen +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/die +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/println +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/zstd +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/zstdgrep +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/bin/zstdless +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh.exit +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdgrep.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdless.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdless.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/cltools/zstdless.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/format.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/mtime.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/common/permissions.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/adapt.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/basic.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/compress-literals.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/format.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/golden.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/gzip-compat.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/levels.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/levels.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/long-distance-matcher.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multiple-files.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/multiple-files.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/row-match-finder.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/stream-size.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/verbose-wlog.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/verbose-wlog.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/verbose-wlog.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/window-resize.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/window-resize.sh.stderr.ignore +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/compression/window-resize.sh.stdout.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/detectErrors.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/golden.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/pass-through.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/pass-through.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/decompression/pass-through.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/empty-input.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/empty-input.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/no-inputs.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dict-builder/no-inputs.sh.exit +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/dictionary-mismatch.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/dictionary-mismatch.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/golden.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/dictionaries/setup_once +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-handling/directory-mirror.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-handling/directory-mirror.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-handling/directory-mirror.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-dir-without-write-perm.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-file-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-stdin-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-stdin-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/compress-stdin-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-file-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-file-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-file-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-stdin-to-file.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-stdin-to-stdout.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/file-stat/decompress-stdin-to-stdout.sh.stderr.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/no-progress.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/no-progress.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/progress.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/progress/progress.sh.stderr.glob +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/zstd-symlinks/setup +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/zstd-symlinks/zstdcat.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/cli-tests/zstd-symlinks/zstdcat.sh.stdout.exact +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/datagencli.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/decodecorpus.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/dict-files/zero-weight-dict +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/external_matchfinder.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/external_matchfinder.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/block_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/block_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/decompress_cross_format.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/decompress_dstSize_tooSmall.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_loader.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/dictionary_stream_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fse_read_ncount.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_data_producer.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_data_producer.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/fuzz_third_party_seq_prod.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/generate_sequences.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/huf_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/huf_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/raw_dictionary_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/regression_driver.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seekable_roundtrip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seq_prod_fuzz_example/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seq_prod_fuzz_example/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/seq_prod_fuzz_example/example_seq_prod.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/sequence_compression_api.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/simple_compress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/simple_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/simple_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/stream_decompress.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/stream_round_trip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/zstd_frame_info.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/zstd_helpers.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/fuzz/zstd_helpers.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/PR-3517-block-splitter-corruption-test +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/http +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/huffman-compressed-larger +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-compression/large-literal-and-match-lengths +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/block-128k.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/empty-block.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/rle-first-block.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression/zeroSeq_2B.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression-errors/off0.bin.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression-errors/truncated_huff_state.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-decompression-errors/zeroSeq_extraneous.zst +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/golden-dictionaries/http-dict-missing-symbols +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/gzip-env.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/helin-segv.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/help-version.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/hufts-segv.gz +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/hufts.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/init.cfg +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/init.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/keep.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/list.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/memcpy-abuse.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/mixed.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/null-suffix-clobber.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/stdin.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/test-driver.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/trailing-nul.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/unpack-invalid.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/z-suffix.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zdiff.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zgrep-context.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zgrep-f.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/zgrep-signal.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/gzip/znew-k.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/invalidDictionaries.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/libzstd_builds.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/loremOut.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/loremOut.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/poolTests.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/rateLimiter.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/config.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/config.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/data.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/data.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/levels.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/method.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/result.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/result.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/results.csv +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/regression/test.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/roundTripCrash.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/seqgen.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/seqgen.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/test-license.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/test-variants.sh +0 -0
- /data/{vendor → ext/zstd_native}/zstd/tests/test-zstd-versions.py +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/BUCK +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/Makefile +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/README.md +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/example.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/example_original.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/fitblk.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/fitblk_original.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/minigzip.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/examples/zwrapbench.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzclose.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzcompatibility.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzguts.h +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzlib.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzread.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/gzwrite.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/zstd_zlibwrapper.c +0 -0
- /data/{vendor → ext/zstd_native}/zstd/zlibWrapper/zstd_zlibwrapper.h +0 -0
|
@@ -168,7 +168,7 @@ static void ZDICT_initDictItem(dictItem* d)
|
|
|
168
168
|
#define MINMATCHLENGTH 7 /* heuristic determined experimentally */
|
|
169
169
|
static dictItem ZDICT_analyzePos(
|
|
170
170
|
BYTE* doneMarks,
|
|
171
|
-
const
|
|
171
|
+
const int* suffix, U32 start,
|
|
172
172
|
const void* buffer, U32 minRatio, U32 notificationLevel)
|
|
173
173
|
{
|
|
174
174
|
U32 lengthList[LLIMIT] = {0};
|
|
@@ -293,10 +293,8 @@ static dictItem ZDICT_analyzePos(
|
|
|
293
293
|
for (i=(int)(maxLength-2); i>=0; i--)
|
|
294
294
|
cumulLength[i] = cumulLength[i+1] + lengthList[i];
|
|
295
295
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
maxLength = u;
|
|
299
|
-
}
|
|
296
|
+
for (i=LLIMIT-1; i>=MINMATCHLENGTH; i--) if (cumulLength[i]>=minRatio) break;
|
|
297
|
+
maxLength = i;
|
|
300
298
|
|
|
301
299
|
/* reduce maxLength in case of final into repetitive data */
|
|
302
300
|
{ U32 l = (U32)maxLength;
|
|
@@ -308,10 +306,8 @@ static dictItem ZDICT_analyzePos(
|
|
|
308
306
|
|
|
309
307
|
/* calculate savings */
|
|
310
308
|
savings[5] = 0;
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
savings[u] = savings[u-1] + (lengthList[u] * (u-3));
|
|
314
|
-
}
|
|
309
|
+
for (i=MINMATCHLENGTH; i<=(int)maxLength; i++)
|
|
310
|
+
savings[i] = savings[i-1] + (lengthList[i] * (i-3));
|
|
315
311
|
|
|
316
312
|
DISPLAYLEVEL(4, "Selected dict at position %u, of length %u : saves %u (ratio: %.2f) \n",
|
|
317
313
|
(unsigned)pos, (unsigned)maxLength, (unsigned)savings[maxLength], (double)savings[maxLength] / (double)maxLength);
|
|
@@ -387,11 +383,11 @@ static U32 ZDICT_tryMerge(dictItem* table, dictItem elt, U32 eltNbToSkip, const
|
|
|
387
383
|
|
|
388
384
|
if ((table[u].pos + table[u].length >= elt.pos) && (table[u].pos < elt.pos)) { /* overlap, existing < new */
|
|
389
385
|
/* append */
|
|
390
|
-
int const addedLength = (int)eltEnd - (int)(table[u].pos + table[u].length);
|
|
386
|
+
int const addedLength = (int)eltEnd - (int)(table[u].pos + table[u].length);
|
|
391
387
|
table[u].savings += elt.length / 8; /* rough approx bonus */
|
|
392
388
|
if (addedLength > 0) { /* otherwise, elt fully included into existing */
|
|
393
|
-
table[u].length +=
|
|
394
|
-
table[u].savings += elt.savings *
|
|
389
|
+
table[u].length += addedLength;
|
|
390
|
+
table[u].savings += elt.savings * addedLength / elt.length; /* rough approx */
|
|
395
391
|
}
|
|
396
392
|
/* sort : improve rank */
|
|
397
393
|
elt = table[u];
|
|
@@ -403,7 +399,7 @@ static U32 ZDICT_tryMerge(dictItem* table, dictItem elt, U32 eltNbToSkip, const
|
|
|
403
399
|
|
|
404
400
|
if (MEM_read64(buf + table[u].pos) == MEM_read64(buf + elt.pos + 1)) {
|
|
405
401
|
if (isIncluded(buf + table[u].pos, buf + elt.pos + 1, table[u].length)) {
|
|
406
|
-
size_t const addedLength = MAX( elt.length - table[u].length , 1 );
|
|
402
|
+
size_t const addedLength = MAX( (int)elt.length - (int)table[u].length , 1 );
|
|
407
403
|
table[u].pos = elt.pos;
|
|
408
404
|
table[u].savings += (U32)(elt.savings * addedLength / elt.length);
|
|
409
405
|
table[u].length = MIN(elt.length, table[u].length + 1);
|
|
@@ -471,8 +467,8 @@ static size_t ZDICT_trainBuffer_legacy(dictItem* dictList, U32 dictListSize,
|
|
|
471
467
|
const size_t* fileSizes, unsigned nbFiles,
|
|
472
468
|
unsigned minRatio, U32 notificationLevel)
|
|
473
469
|
{
|
|
474
|
-
|
|
475
|
-
|
|
470
|
+
int* const suffix0 = (int*)malloc((bufferSize+2)*sizeof(*suffix0));
|
|
471
|
+
int* const suffix = suffix0+1;
|
|
476
472
|
U32* reverseSuffix = (U32*)malloc((bufferSize)*sizeof(*reverseSuffix));
|
|
477
473
|
BYTE* doneMarks = (BYTE*)malloc((bufferSize+16)*sizeof(*doneMarks)); /* +16 for overflow security */
|
|
478
474
|
U32* filePos = (U32*)malloc(nbFiles * sizeof(*filePos));
|
|
@@ -507,11 +503,11 @@ static size_t ZDICT_trainBuffer_legacy(dictItem* dictList, U32 dictListSize,
|
|
|
507
503
|
|
|
508
504
|
/* sort */
|
|
509
505
|
DISPLAYLEVEL(2, "sorting %u files of total size %u MB ...\n", nbFiles, (unsigned)(bufferSize>>20));
|
|
510
|
-
{ int const divSuftSortResult = divsufsort((const unsigned char*)buffer,
|
|
506
|
+
{ int const divSuftSortResult = divsufsort((const unsigned char*)buffer, suffix, (int)bufferSize, 0);
|
|
511
507
|
if (divSuftSortResult != 0) { result = ERROR(GENERIC); goto _cleanup; }
|
|
512
508
|
}
|
|
513
|
-
suffix[bufferSize] = (
|
|
514
|
-
suffix0[0] = (
|
|
509
|
+
suffix[bufferSize] = (int)bufferSize; /* leads into noise */
|
|
510
|
+
suffix0[0] = (int)bufferSize; /* leads into noise */
|
|
515
511
|
/* build reverse suffix sort */
|
|
516
512
|
{ size_t pos;
|
|
517
513
|
for (pos=0; pos < bufferSize; pos++)
|
|
Binary file
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
@ECHO OFF
|
|
2
|
+
MKDIR bin\dll bin\static bin\example bin\include
|
|
3
|
+
COPY tests\fullbench.c bin\example\
|
|
4
|
+
COPY programs\datagen.c bin\example\
|
|
5
|
+
COPY programs\datagen.h bin\example\
|
|
6
|
+
COPY programs\util.h bin\example\
|
|
7
|
+
COPY programs\platform.h bin\example\
|
|
8
|
+
COPY lib\common\mem.h bin\example\
|
|
9
|
+
COPY lib\common\zstd_internal.h bin\example\
|
|
10
|
+
COPY lib\common\error_private.h bin\example\
|
|
11
|
+
COPY lib\common\xxhash.h bin\example\
|
|
12
|
+
COPY lib\libzstd.a bin\static\libzstd_static.lib
|
|
13
|
+
COPY lib\dll\libzstd.* bin\dll\
|
|
14
|
+
COPY lib\dll\example\Makefile bin\example\
|
|
15
|
+
COPY lib\dll\example\fullbench-dll.* bin\example\
|
|
16
|
+
COPY lib\dll\example\README.md bin\
|
|
17
|
+
COPY lib\zstd.h bin\include\
|
|
18
|
+
COPY lib\common\zstd_errors.h bin\include\
|
|
19
|
+
COPY lib\dictBuilder\zdict.h bin\include\
|
|
20
|
+
COPY programs\zstd.exe bin\zstd.exe
|
|
@@ -430,7 +430,7 @@ static unsigned FSE_isError(size_t code) { return (code > (size_t)(-FSE_ERROR_ma
|
|
|
430
430
|
|
|
431
431
|
static short FSE_abs(short a)
|
|
432
432
|
{
|
|
433
|
-
return a<0?
|
|
433
|
+
return a<0? -a : a;
|
|
434
434
|
}
|
|
435
435
|
|
|
436
436
|
|
|
@@ -1823,12 +1823,11 @@ static size_t ZSTD_decompressSequences(
|
|
|
1823
1823
|
BYTE* const ostart = (BYTE* const)dst;
|
|
1824
1824
|
BYTE* op = ostart;
|
|
1825
1825
|
BYTE* const oend = ostart + maxDstSize;
|
|
1826
|
-
size_t errorCode
|
|
1827
|
-
size_t dumpsLength = 0;
|
|
1826
|
+
size_t errorCode, dumpsLength;
|
|
1828
1827
|
const BYTE* litPtr = litStart;
|
|
1829
1828
|
const BYTE* const litEnd = litStart + litSize;
|
|
1830
|
-
int nbSeq
|
|
1831
|
-
const BYTE* dumps
|
|
1829
|
+
int nbSeq;
|
|
1830
|
+
const BYTE* dumps;
|
|
1832
1831
|
U32* DTableLL = dctx->LLTable;
|
|
1833
1832
|
U32* DTableML = dctx->MLTable;
|
|
1834
1833
|
U32* DTableOffb = dctx->OffTable;
|
|
@@ -1916,7 +1915,7 @@ size_t ZSTDv01_decompressDCtx(void* ctx, void* dst, size_t maxDstSize, const voi
|
|
|
1916
1915
|
size_t remainingSize = srcSize;
|
|
1917
1916
|
U32 magicNumber;
|
|
1918
1917
|
size_t errorCode=0;
|
|
1919
|
-
blockProperties_t blockProperties
|
|
1918
|
+
blockProperties_t blockProperties;
|
|
1920
1919
|
|
|
1921
1920
|
/* Frame Header */
|
|
1922
1921
|
if (srcSize < ZSTD_frameHeaderSize+ZSTD_blockHeaderSize) return ERROR(srcSize_wrong);
|
|
@@ -1111,7 +1111,7 @@ static unsigned FSE_isError(size_t code) { return ERR_isError(code); }
|
|
|
1111
1111
|
****************************************************************/
|
|
1112
1112
|
static short FSE_abs(short a)
|
|
1113
1113
|
{
|
|
1114
|
-
return a<0 ?
|
|
1114
|
+
return a<0 ? -a : a;
|
|
1115
1115
|
}
|
|
1116
1116
|
|
|
1117
1117
|
static size_t FSE_readNCount (short* normalizedCounter, unsigned* maxSVPtr, unsigned* tableLogPtr,
|
|
@@ -1094,7 +1094,7 @@ static unsigned FSE_isError(size_t code) { return ERR_isError(code); }
|
|
|
1094
1094
|
****************************************************************/
|
|
1095
1095
|
static short FSE_abs(short a)
|
|
1096
1096
|
{
|
|
1097
|
-
return a<0 ?
|
|
1097
|
+
return a<0 ? -a : a;
|
|
1098
1098
|
}
|
|
1099
1099
|
|
|
1100
1100
|
static size_t FSE_readNCount (short* normalizedCounter, unsigned* maxSVPtr, unsigned* tableLogPtr,
|
|
@@ -1224,7 +1224,7 @@ const char* FSEv05_getErrorName(size_t code) { return ERR_getErrorName(code); }
|
|
|
1224
1224
|
/*-**************************************************************
|
|
1225
1225
|
* FSEv05 NCount encoding-decoding
|
|
1226
1226
|
****************************************************************/
|
|
1227
|
-
static short FSEv05_abs(short a) { return a<0 ?
|
|
1227
|
+
static short FSEv05_abs(short a) { return a<0 ? -a : a; }
|
|
1228
1228
|
|
|
1229
1229
|
|
|
1230
1230
|
size_t FSEv05_readNCount (short* normalizedCounter, unsigned* maxSVPtr, unsigned* tableLogPtr,
|
|
@@ -1202,7 +1202,7 @@ static unsigned HUFv06_isError(size_t code) { return ERR_isError(code); }
|
|
|
1202
1202
|
/*-**************************************************************
|
|
1203
1203
|
* FSE NCount encoding-decoding
|
|
1204
1204
|
****************************************************************/
|
|
1205
|
-
static short FSEv06_abs(short a) { return a<0 ?
|
|
1205
|
+
static short FSEv06_abs(short a) { return a<0 ? -a : a; }
|
|
1206
1206
|
|
|
1207
1207
|
size_t FSEv06_readNCount (short* normalizedCounter, unsigned* maxSVPtr, unsigned* tableLogPtr,
|
|
1208
1208
|
const void* headerBuffer, size_t hbSize)
|
|
@@ -206,10 +206,7 @@ endif
|
|
|
206
206
|
endif
|
|
207
207
|
CPPFLAGS += -DZSTD_LEGACY_SUPPORT=$(ZSTD_LEGACY_SUPPORT)
|
|
208
208
|
|
|
209
|
-
|
|
210
|
-
include $(dir $(lastword $(MAKEFILE_LIST)))/install_oses.mk
|
|
211
|
-
LN ?= ln
|
|
212
|
-
CP ?= cp -f
|
|
209
|
+
UNAME := $(shell sh -c 'MSYSTEM="MSYS" uname')
|
|
213
210
|
|
|
214
211
|
ifndef BUILD_DIR
|
|
215
212
|
ifeq ($(UNAME), Darwin)
|
|
@@ -111,7 +111,7 @@ extern "C" {
|
|
|
111
111
|
/*------ Version ------*/
|
|
112
112
|
#define ZSTD_VERSION_MAJOR 1
|
|
113
113
|
#define ZSTD_VERSION_MINOR 5
|
|
114
|
-
#define ZSTD_VERSION_RELEASE
|
|
114
|
+
#define ZSTD_VERSION_RELEASE 7
|
|
115
115
|
#define ZSTD_VERSION_NUMBER (ZSTD_VERSION_MAJOR *100*100 + ZSTD_VERSION_MINOR *100 + ZSTD_VERSION_RELEASE)
|
|
116
116
|
|
|
117
117
|
/*! ZSTD_versionNumber() :
|
|
@@ -176,30 +176,30 @@ ZSTDLIB_API size_t ZSTD_decompress( void* dst, size_t dstCapacity,
|
|
|
176
176
|
|
|
177
177
|
/*====== Decompression helper functions ======*/
|
|
178
178
|
|
|
179
|
-
/*!
|
|
180
|
-
*
|
|
181
|
-
*
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
185
|
-
*
|
|
186
|
-
*
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
*
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
*
|
|
202
|
-
*/
|
|
179
|
+
/*! ZSTD_getFrameContentSize() : requires v1.3.0+
|
|
180
|
+
* `src` should point to the start of a ZSTD encoded frame.
|
|
181
|
+
* `srcSize` must be at least as large as the frame header.
|
|
182
|
+
* hint : any size >= `ZSTD_frameHeaderSize_max` is large enough.
|
|
183
|
+
* @return : - decompressed size of `src` frame content, if known
|
|
184
|
+
* - ZSTD_CONTENTSIZE_UNKNOWN if the size cannot be determined
|
|
185
|
+
* - ZSTD_CONTENTSIZE_ERROR if an error occurred (e.g. invalid magic number, srcSize too small)
|
|
186
|
+
* note 1 : a 0 return value means the frame is valid but "empty".
|
|
187
|
+
* When invoking this method on a skippable frame, it will return 0.
|
|
188
|
+
* note 2 : decompressed size is an optional field, it may not be present (typically in streaming mode).
|
|
189
|
+
* When `return==ZSTD_CONTENTSIZE_UNKNOWN`, data to decompress could be any size.
|
|
190
|
+
* In which case, it's necessary to use streaming mode to decompress data.
|
|
191
|
+
* Optionally, application can rely on some implicit limit,
|
|
192
|
+
* as ZSTD_decompress() only needs an upper bound of decompressed size.
|
|
193
|
+
* (For example, data could be necessarily cut into blocks <= 16 KB).
|
|
194
|
+
* note 3 : decompressed size is always present when compression is completed using single-pass functions,
|
|
195
|
+
* such as ZSTD_compress(), ZSTD_compressCCtx() ZSTD_compress_usingDict() or ZSTD_compress_usingCDict().
|
|
196
|
+
* note 4 : decompressed size can be very large (64-bits value),
|
|
197
|
+
* potentially larger than what local system can handle as a single memory segment.
|
|
198
|
+
* In which case, it's necessary to use streaming mode to decompress data.
|
|
199
|
+
* note 5 : If source is untrusted, decompressed size could be wrong or intentionally modified.
|
|
200
|
+
* Always ensure return value fits within application's authorized limits.
|
|
201
|
+
* Each application can set its own limits.
|
|
202
|
+
* note 6 : This function replaces ZSTD_getDecompressedSize() */
|
|
203
203
|
#define ZSTD_CONTENTSIZE_UNKNOWN (0ULL - 1)
|
|
204
204
|
#define ZSTD_CONTENTSIZE_ERROR (0ULL - 2)
|
|
205
205
|
ZSTDLIB_API unsigned long long ZSTD_getFrameContentSize(const void *src, size_t srcSize);
|
|
@@ -1868,14 +1868,15 @@ ZSTDLIB_STATIC_API const ZSTD_DDict* ZSTD_initStaticDDict(
|
|
|
1868
1868
|
typedef void* (*ZSTD_allocFunction) (void* opaque, size_t size);
|
|
1869
1869
|
typedef void (*ZSTD_freeFunction) (void* opaque, void* address);
|
|
1870
1870
|
typedef struct { ZSTD_allocFunction customAlloc; ZSTD_freeFunction customFree; void* opaque; } ZSTD_customMem;
|
|
1871
|
-
#if defined(__clang__) && __clang_major__ >= 5
|
|
1872
|
-
#pragma clang diagnostic push
|
|
1873
|
-
#pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
|
|
1874
|
-
#endif
|
|
1875
1871
|
static
|
|
1876
1872
|
#ifdef __GNUC__
|
|
1877
1873
|
__attribute__((__unused__))
|
|
1878
1874
|
#endif
|
|
1875
|
+
|
|
1876
|
+
#if defined(__clang__) && __clang_major__ >= 5
|
|
1877
|
+
#pragma clang diagnostic push
|
|
1878
|
+
#pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
|
|
1879
|
+
#endif
|
|
1879
1880
|
ZSTD_customMem const ZSTD_defaultCMem = { NULL, NULL, NULL }; /**< this constant defers to stdlib's functions */
|
|
1880
1881
|
#if defined(__clang__) && __clang_major__ >= 5
|
|
1881
1882
|
#pragma clang diagnostic pop
|
|
@@ -3137,18 +3138,6 @@ ZSTDLIB_STATIC_API ZSTD_nextInputType_e ZSTD_nextInputType(ZSTD_DCtx* dctx);
|
|
|
3137
3138
|
|
|
3138
3139
|
|
|
3139
3140
|
|
|
3140
|
-
/*! ZSTD_isDeterministicBuild() :
|
|
3141
|
-
* Returns 1 if the library is built using standard compilation flags,
|
|
3142
|
-
* and participates in determinism guarantees with other builds of the
|
|
3143
|
-
* same version.
|
|
3144
|
-
* If this function returns 0, it means the library was compiled with
|
|
3145
|
-
* non-standard compilation flags that change the output of the
|
|
3146
|
-
* compressor.
|
|
3147
|
-
* This is mainly used for Zstd's determinism test suite, which is only
|
|
3148
|
-
* run when this function returns 1.
|
|
3149
|
-
*/
|
|
3150
|
-
ZSTDLIB_API int ZSTD_isDeterministicBuild(void);
|
|
3151
|
-
|
|
3152
3141
|
|
|
3153
3142
|
/* ========================================= */
|
|
3154
3143
|
/** Block level API (DEPRECATED) */
|
|
@@ -170,7 +170,7 @@ endif
|
|
|
170
170
|
|
|
171
171
|
zstd : $(BUILD_DIR)/zstd
|
|
172
172
|
if [ $(BIN_ISDIFFERENT) -eq 1 ]; then \
|
|
173
|
-
|
|
173
|
+
cp -f $<$(EXT) $@$(EXT); \
|
|
174
174
|
echo zstd build completed; \
|
|
175
175
|
else \
|
|
176
176
|
echo zstd already built; \
|
|
@@ -271,7 +271,7 @@ zstd-dictBuilder: $(ZSTDLIB_COMMON_SRC) $(ZSTDLIB_COMPRESS_SRC) $(ZDICT_SRC) zst
|
|
|
271
271
|
|
|
272
272
|
CLEAN += zstdmt
|
|
273
273
|
zstdmt: zstd
|
|
274
|
-
|
|
274
|
+
ln -sf zstd zstdmt
|
|
275
275
|
|
|
276
276
|
.PHONY: generate_res
|
|
277
277
|
generate_res: $(RES64_FILE) $(RES32_FILE)
|
|
@@ -345,7 +345,7 @@ include $(wildcard $(DEPFILES))
|
|
|
345
345
|
#-----------------------------------------------------------------------------
|
|
346
346
|
# make install is validated only for Linux, macOS, BSD, Hurd and Solaris targets
|
|
347
347
|
#-----------------------------------------------------------------------------
|
|
348
|
-
ifneq (,$(filter
|
|
348
|
+
ifneq (,$(filter Linux Darwin GNU/kFreeBSD GNU OpenBSD FreeBSD NetBSD DragonFly SunOS Haiku AIX MSYS_NT% CYGWIN_NT%,$(UNAME)))
|
|
349
349
|
|
|
350
350
|
HAVE_COLORNEVER = $(shell echo a | egrep --color=never a > /dev/null 2> /dev/null && echo 1 || echo 0)
|
|
351
351
|
EGREP_OPTIONS ?=
|
|
@@ -414,15 +414,15 @@ install:
|
|
|
414
414
|
[ -e $(DESTDIR)$(MAN1DIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(MAN1DIR)/
|
|
415
415
|
@echo Installing binaries
|
|
416
416
|
$(INSTALL_PROGRAM) zstd$(EXT) $(DESTDIR)$(BINDIR)/zstd$(EXT)
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
417
|
+
ln -sf zstd$(EXT) $(DESTDIR)$(BINDIR)/zstdcat$(EXT)
|
|
418
|
+
ln -sf zstd$(EXT) $(DESTDIR)$(BINDIR)/unzstd$(EXT)
|
|
419
|
+
ln -sf zstd$(EXT) $(DESTDIR)$(BINDIR)/zstdmt$(EXT)
|
|
420
420
|
$(INSTALL_SCRIPT) zstdless $(DESTDIR)$(BINDIR)/zstdless
|
|
421
421
|
$(INSTALL_SCRIPT) zstdgrep $(DESTDIR)$(BINDIR)/zstdgrep
|
|
422
422
|
@echo Installing man pages
|
|
423
423
|
$(INSTALL_MAN) zstd.1 $(DESTDIR)$(MAN1DIR)/zstd.1
|
|
424
|
-
|
|
425
|
-
|
|
424
|
+
ln -sf zstd.1 $(DESTDIR)$(MAN1DIR)/zstdcat.1
|
|
425
|
+
ln -sf zstd.1 $(DESTDIR)$(MAN1DIR)/unzstd.1
|
|
426
426
|
$(INSTALL_MAN) zstdgrep.1 $(DESTDIR)$(MAN1DIR)/zstdgrep.1
|
|
427
427
|
$(INSTALL_MAN) zstdless.1 $(DESTDIR)$(MAN1DIR)/zstdless.1
|
|
428
428
|
@echo zstd installation completed
|
|
@@ -153,7 +153,7 @@ Usage: zstd [OPTIONS...] [INPUT... | -] [-o OUTPUT]
|
|
|
153
153
|
Options:
|
|
154
154
|
-o OUTPUT Write output to a single file, OUTPUT.
|
|
155
155
|
-k, --keep Preserve INPUT file(s). [Default]
|
|
156
|
-
--rm Remove INPUT file(s) after successful (de)compression
|
|
156
|
+
--rm Remove INPUT file(s) after successful (de)compression.
|
|
157
157
|
|
|
158
158
|
-# Desired compression level, where `#` is a number between 1 and 19;
|
|
159
159
|
lower numbers provide faster compression, higher numbers yield
|
|
@@ -208,7 +208,7 @@ BMK_advancedParams_t BMK_initAdvancedParams(void)
|
|
|
208
208
|
BMK_advancedParams_t const res = {
|
|
209
209
|
BMK_both, /* mode */
|
|
210
210
|
BMK_TIMETEST_DEFAULT_S, /* nbSeconds */
|
|
211
|
-
0, /*
|
|
211
|
+
0, /* blockSize */
|
|
212
212
|
0, /* targetCBlockSize */
|
|
213
213
|
0, /* nbWorkers */
|
|
214
214
|
0, /* realTime */
|
|
@@ -227,6 +227,16 @@ BMK_advancedParams_t BMK_initAdvancedParams(void)
|
|
|
227
227
|
/* ********************************************************
|
|
228
228
|
* Bench functions
|
|
229
229
|
**********************************************************/
|
|
230
|
+
typedef struct {
|
|
231
|
+
const void* srcPtr;
|
|
232
|
+
size_t srcSize;
|
|
233
|
+
void* cPtr;
|
|
234
|
+
size_t cRoom;
|
|
235
|
+
size_t cSize;
|
|
236
|
+
void* resPtr;
|
|
237
|
+
size_t resSize;
|
|
238
|
+
} blockParam_t;
|
|
239
|
+
|
|
230
240
|
#undef MIN
|
|
231
241
|
#undef MAX
|
|
232
242
|
#define MIN(a, b) ((a) < (b) ? (a) : (b))
|
|
@@ -425,16 +435,16 @@ static BMK_benchOutcome_t BMK_benchMemAdvancedNoAlloc(
|
|
|
425
435
|
const char* displayName,
|
|
426
436
|
const BMK_advancedParams_t* adv)
|
|
427
437
|
{
|
|
428
|
-
size_t const
|
|
429
|
-
((adv->
|
|
430
|
-
? adv->
|
|
438
|
+
size_t const blockSize =
|
|
439
|
+
((adv->blockSize >= 32 && (adv->mode != BMK_decodeOnly))
|
|
440
|
+
? adv->blockSize
|
|
431
441
|
: srcSize)
|
|
432
442
|
+ (!srcSize); /* avoid div by 0 */
|
|
433
443
|
BMK_benchResult_t benchResult;
|
|
434
444
|
size_t const loadedCompressedSize = srcSize;
|
|
435
445
|
size_t cSize = 0;
|
|
436
446
|
double ratio = 0.;
|
|
437
|
-
U32
|
|
447
|
+
U32 nbBlocks;
|
|
438
448
|
|
|
439
449
|
assert(cctx != NULL);
|
|
440
450
|
assert(dctx != NULL);
|
|
@@ -490,42 +500,41 @@ static BMK_benchOutcome_t BMK_benchMemAdvancedNoAlloc(
|
|
|
490
500
|
}
|
|
491
501
|
}
|
|
492
502
|
|
|
493
|
-
/* Init data
|
|
503
|
+
/* Init data blocks */
|
|
494
504
|
{
|
|
495
505
|
const char* srcPtr = (const char*)srcBuffer;
|
|
496
506
|
char* cPtr = (char*)compressedBuffer;
|
|
497
507
|
char* resPtr = (char*)(*resultBufferPtr);
|
|
498
|
-
U32 fileNb
|
|
499
|
-
for (
|
|
508
|
+
U32 fileNb;
|
|
509
|
+
for (nbBlocks = 0, fileNb = 0; fileNb < nbFiles; fileNb++) {
|
|
500
510
|
size_t remaining = fileSizes[fileNb];
|
|
501
|
-
U32 const
|
|
511
|
+
U32 const nbBlocksforThisFile = (adv->mode == BMK_decodeOnly)
|
|
502
512
|
? 1
|
|
503
|
-
: (U32)((remaining + (
|
|
504
|
-
U32 const
|
|
505
|
-
for (;
|
|
506
|
-
size_t const
|
|
507
|
-
srcPtrs[
|
|
508
|
-
srcSizes[
|
|
509
|
-
cPtrs[
|
|
510
|
-
cCapacities[
|
|
511
|
-
?
|
|
512
|
-
: ZSTD_compressBound(
|
|
513
|
-
resPtrs[
|
|
514
|
-
resSizes[
|
|
513
|
+
: (U32)((remaining + (blockSize - 1)) / blockSize);
|
|
514
|
+
U32 const blockEnd = nbBlocks + nbBlocksforThisFile;
|
|
515
|
+
for (; nbBlocks < blockEnd; nbBlocks++) {
|
|
516
|
+
size_t const thisBlockSize = MIN(remaining, blockSize);
|
|
517
|
+
srcPtrs[nbBlocks] = srcPtr;
|
|
518
|
+
srcSizes[nbBlocks] = thisBlockSize;
|
|
519
|
+
cPtrs[nbBlocks] = cPtr;
|
|
520
|
+
cCapacities[nbBlocks] = (adv->mode == BMK_decodeOnly)
|
|
521
|
+
? thisBlockSize
|
|
522
|
+
: ZSTD_compressBound(thisBlockSize);
|
|
523
|
+
resPtrs[nbBlocks] = resPtr;
|
|
524
|
+
resSizes[nbBlocks] = (adv->mode == BMK_decodeOnly)
|
|
515
525
|
? (size_t)ZSTD_findDecompressedSize(
|
|
516
|
-
srcPtr,
|
|
517
|
-
:
|
|
518
|
-
srcPtr +=
|
|
519
|
-
cPtr += cCapacities[
|
|
520
|
-
resPtr +=
|
|
521
|
-
remaining -=
|
|
526
|
+
srcPtr, thisBlockSize)
|
|
527
|
+
: thisBlockSize;
|
|
528
|
+
srcPtr += thisBlockSize;
|
|
529
|
+
cPtr += cCapacities[nbBlocks];
|
|
530
|
+
resPtr += thisBlockSize;
|
|
531
|
+
remaining -= thisBlockSize;
|
|
522
532
|
if (adv->mode == BMK_decodeOnly) {
|
|
523
|
-
cSizes[
|
|
524
|
-
benchResult.cSize =
|
|
533
|
+
cSizes[nbBlocks] = thisBlockSize;
|
|
534
|
+
benchResult.cSize = thisBlockSize;
|
|
525
535
|
}
|
|
526
536
|
}
|
|
527
537
|
}
|
|
528
|
-
nbChunks = chunkID;
|
|
529
538
|
}
|
|
530
539
|
|
|
531
540
|
/* warming up `compressedBuffer` */
|
|
@@ -560,7 +569,7 @@ static BMK_benchOutcome_t BMK_benchMemAdvancedNoAlloc(
|
|
|
560
569
|
cbp.initFn = local_initCCtx; /* BMK_initCCtx */
|
|
561
570
|
cbp.initPayload = &cctxprep;
|
|
562
571
|
cbp.errorFn = ZSTD_isError;
|
|
563
|
-
cbp.blockCount =
|
|
572
|
+
cbp.blockCount = nbBlocks;
|
|
564
573
|
cbp.srcBuffers = srcPtrs;
|
|
565
574
|
cbp.srcSizes = srcSizes;
|
|
566
575
|
cbp.dstBuffers = cPtrs;
|
|
@@ -579,7 +588,7 @@ static BMK_benchOutcome_t BMK_benchMemAdvancedNoAlloc(
|
|
|
579
588
|
dbp.initFn = local_initDCtx;
|
|
580
589
|
dbp.initPayload = &dctxprep;
|
|
581
590
|
dbp.errorFn = ZSTD_isError;
|
|
582
|
-
dbp.blockCount =
|
|
591
|
+
dbp.blockCount = nbBlocks;
|
|
583
592
|
dbp.srcBuffers = (const void* const*)cPtrs;
|
|
584
593
|
dbp.srcSizes = cSizes;
|
|
585
594
|
dbp.dstBuffers = resPtrs;
|
|
@@ -681,7 +690,8 @@ static BMK_benchOutcome_t BMK_benchMemAdvancedNoAlloc(
|
|
|
681
690
|
} /* while (!(compressionCompleted && decompressionCompleted)) */
|
|
682
691
|
|
|
683
692
|
/* CRC Checking */
|
|
684
|
-
{
|
|
693
|
+
{
|
|
694
|
+
const BYTE* resultBuffer = (const BYTE*)(*resultBufferPtr);
|
|
685
695
|
U64 const crcCheck = XXH64(resultBuffer, srcSize, 0);
|
|
686
696
|
if ((adv->mode == BMK_both) && (crcOrig != crcCheck)) {
|
|
687
697
|
size_t u;
|
|
@@ -694,14 +704,14 @@ static BMK_benchOutcome_t BMK_benchMemAdvancedNoAlloc(
|
|
|
694
704
|
unsigned segNb, bNb, pos;
|
|
695
705
|
size_t bacc = 0;
|
|
696
706
|
DISPLAY("Decoding error at pos %u ", (unsigned)u);
|
|
697
|
-
for (segNb = 0; segNb <
|
|
707
|
+
for (segNb = 0; segNb < nbBlocks; segNb++) {
|
|
698
708
|
if (bacc + srcSizes[segNb] > u)
|
|
699
709
|
break;
|
|
700
710
|
bacc += srcSizes[segNb];
|
|
701
711
|
}
|
|
702
712
|
pos = (U32)(u - bacc);
|
|
703
713
|
bNb = pos / (128 KB);
|
|
704
|
-
DISPLAY("(sample %u,
|
|
714
|
+
DISPLAY("(sample %u, block %u, pos %u) \n",
|
|
705
715
|
segNb,
|
|
706
716
|
bNb,
|
|
707
717
|
pos);
|
|
@@ -785,24 +795,25 @@ BMK_benchOutcome_t BMK_benchMemAdvanced(
|
|
|
785
795
|
int const dstParamsError =
|
|
786
796
|
!dstBuffer ^ !dstCapacity; /* must be both NULL or none */
|
|
787
797
|
|
|
788
|
-
size_t const
|
|
789
|
-
((adv->
|
|
790
|
-
? adv->
|
|
798
|
+
size_t const blockSize =
|
|
799
|
+
((adv->blockSize >= 32 && (adv->mode != BMK_decodeOnly))
|
|
800
|
+
? adv->blockSize
|
|
791
801
|
: srcSize)
|
|
792
802
|
+ (!srcSize) /* avoid div by 0 */;
|
|
793
|
-
U32 const
|
|
794
|
-
(U32)((srcSize + (
|
|
803
|
+
U32 const maxNbBlocks =
|
|
804
|
+
(U32)((srcSize + (blockSize - 1)) / blockSize) + nbFiles;
|
|
795
805
|
|
|
806
|
+
/* these are the blockTable parameters, just split up */
|
|
796
807
|
const void** const srcPtrs =
|
|
797
|
-
(const void**)malloc(
|
|
798
|
-
size_t* const srcSizes = (size_t*)malloc(
|
|
808
|
+
(const void**)malloc(maxNbBlocks * sizeof(void*));
|
|
809
|
+
size_t* const srcSizes = (size_t*)malloc(maxNbBlocks * sizeof(size_t));
|
|
799
810
|
|
|
800
|
-
void** const cPtrs = (void**)malloc(
|
|
801
|
-
size_t* const cSizes = (size_t*)malloc(
|
|
802
|
-
size_t* const cCapacities = (size_t*)malloc(
|
|
811
|
+
void** const cPtrs = (void**)malloc(maxNbBlocks * sizeof(void*));
|
|
812
|
+
size_t* const cSizes = (size_t*)malloc(maxNbBlocks * sizeof(size_t));
|
|
813
|
+
size_t* const cCapacities = (size_t*)malloc(maxNbBlocks * sizeof(size_t));
|
|
803
814
|
|
|
804
|
-
void** const resPtrs = (void**)malloc(
|
|
805
|
-
size_t* const resSizes = (size_t*)malloc(
|
|
815
|
+
void** const resPtrs = (void**)malloc(maxNbBlocks * sizeof(void*));
|
|
816
|
+
size_t* const resSizes = (size_t*)malloc(maxNbBlocks * sizeof(size_t));
|
|
806
817
|
|
|
807
818
|
BMK_timedFnState_t* timeStateCompress = BMK_createTimedFnState(
|
|
808
819
|
adv->nbSeconds * 1000, BMK_RUNTEST_DEFAULT_MS);
|
|
@@ -814,7 +825,7 @@ BMK_benchOutcome_t BMK_benchMemAdvanced(
|
|
|
814
825
|
|
|
815
826
|
const size_t maxCompressedSize = dstCapacity
|
|
816
827
|
? dstCapacity
|
|
817
|
-
: ZSTD_compressBound(srcSize) + (
|
|
828
|
+
: ZSTD_compressBound(srcSize) + (maxNbBlocks * 1024);
|
|
818
829
|
|
|
819
830
|
void* const internalDstBuffer =
|
|
820
831
|
dstBuffer ? NULL : malloc(maxCompressedSize);
|
|
@@ -953,12 +964,12 @@ static int BMK_benchCLevels(
|
|
|
953
964
|
}
|
|
954
965
|
|
|
955
966
|
if (displayLevel == 1 && !adv->additionalParam) /* --quiet mode */
|
|
956
|
-
OUTPUT("bench %s %s: input %u bytes, %u seconds, %u KB
|
|
967
|
+
OUTPUT("bench %s %s: input %u bytes, %u seconds, %u KB blocks\n",
|
|
957
968
|
ZSTD_VERSION_STRING,
|
|
958
969
|
ZSTD_GIT_COMMIT_STRING,
|
|
959
970
|
(unsigned)benchedSize,
|
|
960
971
|
adv->nbSeconds,
|
|
961
|
-
(unsigned)(adv->
|
|
972
|
+
(unsigned)(adv->blockSize >> 10));
|
|
962
973
|
|
|
963
974
|
for (level = startCLevel; level <= endCLevel; level++) {
|
|
964
975
|
BMK_benchOutcome_t res = BMK_benchMemAdvanced(
|
|
@@ -989,7 +1000,7 @@ int BMK_syntheticTest(
|
|
|
989
1000
|
{
|
|
990
1001
|
char nameBuff[20] = { 0 };
|
|
991
1002
|
const char* name = nameBuff;
|
|
992
|
-
size_t const benchedSize = adv->
|
|
1003
|
+
size_t const benchedSize = adv->blockSize ? adv->blockSize : 10000000;
|
|
993
1004
|
|
|
994
1005
|
/* Memory allocation */
|
|
995
1006
|
void* const srcBuffer = malloc(benchedSize);
|
|
@@ -92,9 +92,9 @@ typedef enum {
|
|
|
92
92
|
} BMK_mode_t;
|
|
93
93
|
|
|
94
94
|
typedef struct {
|
|
95
|
-
BMK_mode_t mode; /* 0:
|
|
95
|
+
BMK_mode_t mode; /* 0: all, 1: compress only 2: decode only */
|
|
96
96
|
unsigned nbSeconds; /* default timing is in nbSeconds */
|
|
97
|
-
size_t
|
|
97
|
+
size_t blockSize; /* Maximum size of each block*/
|
|
98
98
|
size_t targetCBlockSize;/* Approximative size of compressed blocks */
|
|
99
99
|
int nbWorkers; /* multithreading */
|
|
100
100
|
unsigned realTime; /* real time priority */
|
|
@@ -280,15 +280,8 @@ static fileStats DiB_fileStats(const char** fileNamesTable, int nbFiles, size_t
|
|
|
280
280
|
for (n=0; n<nbFiles; n++) {
|
|
281
281
|
S64 const fileSize = DiB_getFileSize(fileNamesTable[n]);
|
|
282
282
|
/* TODO: is there a minimum sample size? What if the file is 1-byte? */
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
if (fileSize < 0) {
|
|
286
|
-
DISPLAYLEVEL(3, "Sample file '%s' is unreadable or stat failed, skipping...\n",
|
|
287
|
-
fileNamesTable[n]);
|
|
288
|
-
} else {
|
|
289
|
-
DISPLAYLEVEL(3, "Sample file '%s' has zero size, skipping...\n",
|
|
290
|
-
fileNamesTable[n]);
|
|
291
|
-
}
|
|
283
|
+
if (fileSize == 0) {
|
|
284
|
+
DISPLAYLEVEL(3, "Sample file '%s' has zero size, skipping...\n", fileNamesTable[n]);
|
|
292
285
|
continue;
|
|
293
286
|
}
|
|
294
287
|
|
|
@@ -369,9 +362,9 @@ int DiB_trainFromFiles(const char* dictFileName, size_t maxDictSize,
|
|
|
369
362
|
DISPLAYLEVEL(2, "! As a consequence, only the first %u bytes of each sample are loaded \n", SAMPLESIZE_MAX);
|
|
370
363
|
}
|
|
371
364
|
if (fs.nbSamples < 5) {
|
|
372
|
-
DISPLAYLEVEL(2, "! Warning : nb of samples too low for proper processing
|
|
373
|
-
DISPLAYLEVEL(2, "! Please provide _one file per sample_
|
|
374
|
-
DISPLAYLEVEL(2, "! Alternatively, split
|
|
365
|
+
DISPLAYLEVEL(2, "! Warning : nb of samples too low for proper processing ! \n");
|
|
366
|
+
DISPLAYLEVEL(2, "! Please provide _one file per sample_. \n");
|
|
367
|
+
DISPLAYLEVEL(2, "! Alternatively, split files into fixed-size blocks representative of samples, with -B# \n");
|
|
375
368
|
EXM_THROW(14, "nb of samples too low"); /* we now clearly forbid this case */
|
|
376
369
|
}
|
|
377
370
|
if (fs.totalSizeToLoad < (S64)maxDictSize * 8) {
|