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
|
@@ -56,14 +56,6 @@
|
|
|
56
56
|
# define ZSTD_HASHLOG3_MAX 17
|
|
57
57
|
#endif
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
/*-*************************************
|
|
61
|
-
* Forward declarations
|
|
62
|
-
***************************************/
|
|
63
|
-
size_t convertSequences_noRepcodes(SeqDef* dstSeqs, const ZSTD_Sequence* inSeqs,
|
|
64
|
-
size_t nbSequences);
|
|
65
|
-
|
|
66
|
-
|
|
67
59
|
/*-*************************************
|
|
68
60
|
* Helper functions
|
|
69
61
|
***************************************/
|
|
@@ -245,18 +237,10 @@ static int ZSTD_rowMatchFinderUsed(const ZSTD_strategy strategy, const ZSTD_Para
|
|
|
245
237
|
/* Returns row matchfinder usage given an initial mode and cParams */
|
|
246
238
|
static ZSTD_ParamSwitch_e ZSTD_resolveRowMatchFinderMode(ZSTD_ParamSwitch_e mode,
|
|
247
239
|
const ZSTD_compressionParameters* const cParams) {
|
|
248
|
-
#ifdef ZSTD_LINUX_KERNEL
|
|
249
|
-
/* The Linux Kernel does not use SIMD, and 128KB is a very common size, e.g. in BtrFS.
|
|
250
|
-
* The row match finder is slower for this size without SIMD, so disable it.
|
|
251
|
-
*/
|
|
252
|
-
const unsigned kWindowLogLowerBound = 17;
|
|
253
|
-
#else
|
|
254
|
-
const unsigned kWindowLogLowerBound = 14;
|
|
255
|
-
#endif
|
|
256
240
|
if (mode != ZSTD_ps_auto) return mode; /* if requested enabled, but no SIMD, we still will use row matchfinder */
|
|
257
241
|
mode = ZSTD_ps_disable;
|
|
258
242
|
if (!ZSTD_rowMatchFinderSupported(cParams->strategy)) return mode;
|
|
259
|
-
if (cParams->windowLog >
|
|
243
|
+
if (cParams->windowLog > 14) mode = ZSTD_ps_enable;
|
|
260
244
|
return mode;
|
|
261
245
|
}
|
|
262
246
|
|
|
@@ -7126,7 +7110,7 @@ size_t ZSTD_compressSequences(ZSTD_CCtx* cctx,
|
|
|
7126
7110
|
}
|
|
7127
7111
|
|
|
7128
7112
|
|
|
7129
|
-
#if defined(
|
|
7113
|
+
#if defined(__AVX2__)
|
|
7130
7114
|
|
|
7131
7115
|
#include <immintrin.h> /* AVX2 intrinsics */
|
|
7132
7116
|
|
|
@@ -7146,7 +7130,7 @@ size_t ZSTD_compressSequences(ZSTD_CCtx* cctx,
|
|
|
7146
7130
|
* @returns > 0 if there is one long length (> 65535),
|
|
7147
7131
|
* indicating the position, and type.
|
|
7148
7132
|
*/
|
|
7149
|
-
size_t convertSequences_noRepcodes(
|
|
7133
|
+
static size_t convertSequences_noRepcodes(
|
|
7150
7134
|
SeqDef* dstSeqs,
|
|
7151
7135
|
const ZSTD_Sequence* inSeqs,
|
|
7152
7136
|
size_t nbSequences)
|
|
@@ -7292,378 +7276,13 @@ size_t convertSequences_noRepcodes(
|
|
|
7292
7276
|
return longLen;
|
|
7293
7277
|
}
|
|
7294
7278
|
|
|
7295
|
-
#elif defined (ZSTD_ARCH_RISCV_RVV)
|
|
7296
|
-
#include <riscv_vector.h>
|
|
7297
|
-
/*
|
|
7298
|
-
* Convert `vl` sequences per iteration, using RVV intrinsics:
|
|
7299
|
-
* - offset -> offBase = offset + 2
|
|
7300
|
-
* - litLength -> (U16) litLength
|
|
7301
|
-
* - matchLength -> (U16)(matchLength - 3)
|
|
7302
|
-
* - rep is ignored
|
|
7303
|
-
* Store only 8 bytes per SeqDef (offBase[4], litLength[2], mlBase[2]).
|
|
7304
|
-
*
|
|
7305
|
-
* @returns 0 on succes, with no long length detected
|
|
7306
|
-
* @returns > 0 if there is one long length (> 65535),
|
|
7307
|
-
* indicating the position, and type.
|
|
7308
|
-
*/
|
|
7309
|
-
size_t convertSequences_noRepcodes(SeqDef* dstSeqs, const ZSTD_Sequence* inSeqs, size_t nbSequences) {
|
|
7310
|
-
size_t longLen = 0;
|
|
7311
|
-
size_t vl = 0;
|
|
7312
|
-
typedef uint32_t __attribute__((may_alias)) aliased_u32;
|
|
7313
|
-
/* RVV depends on the specific definition of target structures */
|
|
7314
|
-
ZSTD_STATIC_ASSERT(sizeof(ZSTD_Sequence) == 16);
|
|
7315
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, offset) == 0);
|
|
7316
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, litLength) == 4);
|
|
7317
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, matchLength) == 8);
|
|
7318
|
-
ZSTD_STATIC_ASSERT(sizeof(SeqDef) == 8);
|
|
7319
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, offBase) == 0);
|
|
7320
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, litLength) == 4);
|
|
7321
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, mlBase) == 6);
|
|
7322
|
-
|
|
7323
|
-
for (size_t i = 0; i < nbSequences; i += vl) {
|
|
7324
|
-
|
|
7325
|
-
vl = __riscv_vsetvl_e32m2(nbSequences-i);
|
|
7326
|
-
{
|
|
7327
|
-
// Loading structure member variables
|
|
7328
|
-
vuint32m2x4_t v_tuple = __riscv_vlseg4e32_v_u32m2x4(
|
|
7329
|
-
(const aliased_u32*)((const void*)&inSeqs[i]),
|
|
7330
|
-
vl
|
|
7331
|
-
);
|
|
7332
|
-
vuint32m2_t v_offset = __riscv_vget_v_u32m2x4_u32m2(v_tuple, 0);
|
|
7333
|
-
vuint32m2_t v_lit = __riscv_vget_v_u32m2x4_u32m2(v_tuple, 1);
|
|
7334
|
-
vuint32m2_t v_match = __riscv_vget_v_u32m2x4_u32m2(v_tuple, 2);
|
|
7335
|
-
// offset + ZSTD_REP_NUM
|
|
7336
|
-
vuint32m2_t v_offBase = __riscv_vadd_vx_u32m2(v_offset, ZSTD_REP_NUM, vl);
|
|
7337
|
-
// Check for integer overflow
|
|
7338
|
-
// Cast to a 16-bit variable
|
|
7339
|
-
vbool16_t lit_overflow = __riscv_vmsgtu_vx_u32m2_b16(v_lit, 65535, vl);
|
|
7340
|
-
vuint16m1_t v_lit_clamped = __riscv_vncvt_x_x_w_u16m1(v_lit, vl);
|
|
7341
|
-
|
|
7342
|
-
vbool16_t ml_overflow = __riscv_vmsgtu_vx_u32m2_b16(v_match, 65535+MINMATCH, vl);
|
|
7343
|
-
vuint16m1_t v_ml_clamped = __riscv_vncvt_x_x_w_u16m1(__riscv_vsub_vx_u32m2(v_match, MINMATCH, vl), vl);
|
|
7344
|
-
|
|
7345
|
-
// Pack two 16-bit fields into a 32-bit value (little-endian)
|
|
7346
|
-
// The lower 16 bits contain litLength, and the upper 16 bits contain mlBase
|
|
7347
|
-
vuint32m2_t v_lit_ml_combined = __riscv_vsll_vx_u32m2(
|
|
7348
|
-
__riscv_vwcvtu_x_x_v_u32m2(v_ml_clamped, vl), // Convert matchLength to 32-bit
|
|
7349
|
-
16,
|
|
7350
|
-
vl
|
|
7351
|
-
);
|
|
7352
|
-
v_lit_ml_combined = __riscv_vor_vv_u32m2(
|
|
7353
|
-
v_lit_ml_combined,
|
|
7354
|
-
__riscv_vwcvtu_x_x_v_u32m2(v_lit_clamped, vl),
|
|
7355
|
-
vl
|
|
7356
|
-
);
|
|
7357
|
-
{
|
|
7358
|
-
// Create a vector of SeqDef structures
|
|
7359
|
-
// Store the offBase, litLength, and mlBase in a vector of SeqDef
|
|
7360
|
-
vuint32m2x2_t store_data = __riscv_vcreate_v_u32m2x2(
|
|
7361
|
-
v_offBase,
|
|
7362
|
-
v_lit_ml_combined
|
|
7363
|
-
);
|
|
7364
|
-
__riscv_vsseg2e32_v_u32m2x2(
|
|
7365
|
-
(aliased_u32*)((void*)&dstSeqs[i]),
|
|
7366
|
-
store_data,
|
|
7367
|
-
vl
|
|
7368
|
-
);
|
|
7369
|
-
}
|
|
7370
|
-
{
|
|
7371
|
-
// Find the first index where an overflow occurs
|
|
7372
|
-
int first_ml = __riscv_vfirst_m_b16(ml_overflow, vl);
|
|
7373
|
-
int first_lit = __riscv_vfirst_m_b16(lit_overflow, vl);
|
|
7374
|
-
|
|
7375
|
-
if (UNLIKELY(first_ml != -1)) {
|
|
7376
|
-
assert(longLen == 0);
|
|
7377
|
-
longLen = i + first_ml + 1;
|
|
7378
|
-
}
|
|
7379
|
-
if (UNLIKELY(first_lit != -1)) {
|
|
7380
|
-
assert(longLen == 0);
|
|
7381
|
-
longLen = i + first_lit + 1 + nbSequences;
|
|
7382
|
-
}
|
|
7383
|
-
}
|
|
7384
|
-
}
|
|
7385
|
-
}
|
|
7386
|
-
return longLen;
|
|
7387
|
-
}
|
|
7388
|
-
|
|
7389
7279
|
/* the vector implementation could also be ported to SSSE3,
|
|
7390
7280
|
* but since this implementation is targeting modern systems (>= Sapphire Rapid),
|
|
7391
7281
|
* it's not useful to develop and maintain code for older pre-AVX2 platforms */
|
|
7392
7282
|
|
|
7393
|
-
#
|
|
7394
|
-
|
|
7395
|
-
/*
|
|
7396
|
-
* Checks if any active element in a signed 8-bit integer vector is greater
|
|
7397
|
-
* than zero.
|
|
7398
|
-
*
|
|
7399
|
-
* @param g Governing predicate selecting active lanes.
|
|
7400
|
-
* @param a Input vector of signed 8-bit integers.
|
|
7401
|
-
*
|
|
7402
|
-
* @return True if any active element in `a` is > 0, false otherwise.
|
|
7403
|
-
*/
|
|
7404
|
-
FORCE_INLINE_TEMPLATE int cmpgtz_any_s8(svbool_t g, svint8_t a)
|
|
7405
|
-
{
|
|
7406
|
-
svbool_t ptest = svcmpgt_n_s8(g, a, 0);
|
|
7407
|
-
return svptest_any(ptest, ptest);
|
|
7408
|
-
}
|
|
7283
|
+
#else /* no AVX2 */
|
|
7409
7284
|
|
|
7410
|
-
size_t convertSequences_noRepcodes(
|
|
7411
|
-
SeqDef* dstSeqs,
|
|
7412
|
-
const ZSTD_Sequence* inSeqs,
|
|
7413
|
-
size_t nbSequences)
|
|
7414
|
-
{
|
|
7415
|
-
/* Process the input with `8 * VL / element` lanes. */
|
|
7416
|
-
const size_t lanes = 8 * svcntb() / sizeof(ZSTD_Sequence);
|
|
7417
|
-
size_t longLen = 0;
|
|
7418
|
-
size_t n = 0;
|
|
7419
|
-
|
|
7420
|
-
/* SVE permutation depends on the specific definition of target structures. */
|
|
7421
|
-
ZSTD_STATIC_ASSERT(sizeof(ZSTD_Sequence) == 16);
|
|
7422
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, offset) == 0);
|
|
7423
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, litLength) == 4);
|
|
7424
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, matchLength) == 8);
|
|
7425
|
-
ZSTD_STATIC_ASSERT(sizeof(SeqDef) == 8);
|
|
7426
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, offBase) == 0);
|
|
7427
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, litLength) == 4);
|
|
7428
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, mlBase) == 6);
|
|
7429
|
-
|
|
7430
|
-
if (nbSequences >= lanes) {
|
|
7431
|
-
const svbool_t ptrue = svptrue_b8();
|
|
7432
|
-
/* 16-bit of {ZSTD_REP_NUM, 0, -MINMATCH, 0} extended to 32-bit lanes. */
|
|
7433
|
-
const svuint32_t vaddition = svreinterpret_u32(
|
|
7434
|
-
svunpklo_s32(svreinterpret_s16(svdup_n_u64(ZSTD_REP_NUM | (((U64)(U16)-MINMATCH) << 32)))));
|
|
7435
|
-
/* For permutation of 16-bit units: 0, 1, 2, 4, 8, 9, 10, 12, ... */
|
|
7436
|
-
const svuint16_t vmask = svreinterpret_u16(
|
|
7437
|
-
svindex_u64(0x0004000200010000, 0x0008000800080008));
|
|
7438
|
-
/* Upper bytes of `litLength` and `matchLength` will be packed into the
|
|
7439
|
-
* middle of overflow check vector. */
|
|
7440
|
-
const svbool_t pmid = svcmpne_n_u8(
|
|
7441
|
-
ptrue, svreinterpret_u8(svdup_n_u64(0x0000FFFFFFFF0000)), 0);
|
|
7442
|
-
|
|
7443
|
-
do {
|
|
7444
|
-
/* Load `lanes` number of `ZSTD_Sequence` into 8 vectors. */
|
|
7445
|
-
const svuint32_t vin0 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 0);
|
|
7446
|
-
const svuint32_t vin1 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 1);
|
|
7447
|
-
const svuint32_t vin2 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 2);
|
|
7448
|
-
const svuint32_t vin3 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 3);
|
|
7449
|
-
const svuint32_t vin4 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 4);
|
|
7450
|
-
const svuint32_t vin5 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 5);
|
|
7451
|
-
const svuint32_t vin6 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 6);
|
|
7452
|
-
const svuint32_t vin7 = svld1_vnum_u32(ptrue, &inSeqs[n].offset, 7);
|
|
7453
|
-
|
|
7454
|
-
/* Add {ZSTD_REP_NUM, 0, -MINMATCH, 0} to each structures. */
|
|
7455
|
-
const svuint16x2_t vadd01 = svcreate2_u16(
|
|
7456
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin0, vaddition)),
|
|
7457
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin1, vaddition)));
|
|
7458
|
-
const svuint16x2_t vadd23 = svcreate2_u16(
|
|
7459
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin2, vaddition)),
|
|
7460
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin3, vaddition)));
|
|
7461
|
-
const svuint16x2_t vadd45 = svcreate2_u16(
|
|
7462
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin4, vaddition)),
|
|
7463
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin5, vaddition)));
|
|
7464
|
-
const svuint16x2_t vadd67 = svcreate2_u16(
|
|
7465
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin6, vaddition)),
|
|
7466
|
-
svreinterpret_u16(svadd_u32_x(ptrue, vin7, vaddition)));
|
|
7467
|
-
|
|
7468
|
-
/* Shuffle and pack bytes so each vector contains SeqDef structures. */
|
|
7469
|
-
const svuint16_t vout01 = svtbl2_u16(vadd01, vmask);
|
|
7470
|
-
const svuint16_t vout23 = svtbl2_u16(vadd23, vmask);
|
|
7471
|
-
const svuint16_t vout45 = svtbl2_u16(vadd45, vmask);
|
|
7472
|
-
const svuint16_t vout67 = svtbl2_u16(vadd67, vmask);
|
|
7473
|
-
|
|
7474
|
-
/* Pack the upper 16-bits of 32-bit lanes for overflow check. */
|
|
7475
|
-
const svuint16_t voverflow01 = svuzp2_u16(svget2_u16(vadd01, 0),
|
|
7476
|
-
svget2_u16(vadd01, 1));
|
|
7477
|
-
const svuint16_t voverflow23 = svuzp2_u16(svget2_u16(vadd23, 0),
|
|
7478
|
-
svget2_u16(vadd23, 1));
|
|
7479
|
-
const svuint16_t voverflow45 = svuzp2_u16(svget2_u16(vadd45, 0),
|
|
7480
|
-
svget2_u16(vadd45, 1));
|
|
7481
|
-
const svuint16_t voverflow67 = svuzp2_u16(svget2_u16(vadd67, 0),
|
|
7482
|
-
svget2_u16(vadd67, 1));
|
|
7483
|
-
|
|
7484
|
-
/* We don't need the whole 16 bits of the overflow part. Only 1 bit
|
|
7485
|
-
* is needed, so we pack tightly and merge multiple vectors to be
|
|
7486
|
-
* able to use a single comparison to handle the overflow case.
|
|
7487
|
-
* However, we also need to handle the possible negative values of
|
|
7488
|
-
* matchLength parts, so we use signed comparison later. */
|
|
7489
|
-
const svint8_t voverflow =
|
|
7490
|
-
svmax_s8_x(pmid,
|
|
7491
|
-
svtrn1_s8(svreinterpret_s8(voverflow01),
|
|
7492
|
-
svreinterpret_s8(voverflow23)),
|
|
7493
|
-
svtrn1_s8(svreinterpret_s8(voverflow45),
|
|
7494
|
-
svreinterpret_s8(voverflow67)));
|
|
7495
|
-
|
|
7496
|
-
/* Store `lanes` number of `SeqDef` structures from 4 vectors. */
|
|
7497
|
-
svst1_vnum_u32(ptrue, &dstSeqs[n].offBase, 0, svreinterpret_u32(vout01));
|
|
7498
|
-
svst1_vnum_u32(ptrue, &dstSeqs[n].offBase, 1, svreinterpret_u32(vout23));
|
|
7499
|
-
svst1_vnum_u32(ptrue, &dstSeqs[n].offBase, 2, svreinterpret_u32(vout45));
|
|
7500
|
-
svst1_vnum_u32(ptrue, &dstSeqs[n].offBase, 3, svreinterpret_u32(vout67));
|
|
7501
|
-
|
|
7502
|
-
/* Check if any enabled lanes of the overflow vector is larger than
|
|
7503
|
-
* zero, only one such may happen. */
|
|
7504
|
-
if (UNLIKELY(cmpgtz_any_s8(pmid, voverflow))) {
|
|
7505
|
-
/* Scalar search for long match is needed because we merged
|
|
7506
|
-
* multiple overflow bytes with `max`. */
|
|
7507
|
-
size_t i;
|
|
7508
|
-
for (i = n; i < n + lanes; i++) {
|
|
7509
|
-
if (inSeqs[i].matchLength > 65535 + MINMATCH) {
|
|
7510
|
-
assert(longLen == 0);
|
|
7511
|
-
longLen = i + 1;
|
|
7512
|
-
}
|
|
7513
|
-
if (inSeqs[i].litLength > 65535) {
|
|
7514
|
-
assert(longLen == 0);
|
|
7515
|
-
longLen = i + nbSequences + 1;
|
|
7516
|
-
}
|
|
7517
|
-
}
|
|
7518
|
-
}
|
|
7519
|
-
|
|
7520
|
-
n += lanes;
|
|
7521
|
-
} while(n <= nbSequences - lanes);
|
|
7522
|
-
}
|
|
7523
|
-
|
|
7524
|
-
/* Handle remaining elements. */
|
|
7525
|
-
for (; n < nbSequences; n++) {
|
|
7526
|
-
dstSeqs[n].offBase = OFFSET_TO_OFFBASE(inSeqs[n].offset);
|
|
7527
|
-
dstSeqs[n].litLength = (U16)inSeqs[n].litLength;
|
|
7528
|
-
dstSeqs[n].mlBase = (U16)(inSeqs[n].matchLength - MINMATCH);
|
|
7529
|
-
/* Check for long length > 65535. */
|
|
7530
|
-
if (UNLIKELY(inSeqs[n].matchLength > 65535 + MINMATCH)) {
|
|
7531
|
-
assert(longLen == 0);
|
|
7532
|
-
longLen = n + 1;
|
|
7533
|
-
}
|
|
7534
|
-
if (UNLIKELY(inSeqs[n].litLength > 65535)) {
|
|
7535
|
-
assert(longLen == 0);
|
|
7536
|
-
longLen = n + nbSequences + 1;
|
|
7537
|
-
}
|
|
7538
|
-
}
|
|
7539
|
-
return longLen;
|
|
7540
|
-
}
|
|
7541
|
-
|
|
7542
|
-
#elif defined(ZSTD_ARCH_ARM_NEON) && (defined(__aarch64__) || defined(_M_ARM64))
|
|
7543
|
-
|
|
7544
|
-
size_t convertSequences_noRepcodes(
|
|
7545
|
-
SeqDef* dstSeqs,
|
|
7546
|
-
const ZSTD_Sequence* inSeqs,
|
|
7547
|
-
size_t nbSequences)
|
|
7548
|
-
{
|
|
7549
|
-
size_t longLen = 0;
|
|
7550
|
-
size_t n = 0;
|
|
7551
|
-
|
|
7552
|
-
/* Neon permutation depends on the specific definition of target structures. */
|
|
7553
|
-
ZSTD_STATIC_ASSERT(sizeof(ZSTD_Sequence) == 16);
|
|
7554
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, offset) == 0);
|
|
7555
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, litLength) == 4);
|
|
7556
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, matchLength) == 8);
|
|
7557
|
-
ZSTD_STATIC_ASSERT(sizeof(SeqDef) == 8);
|
|
7558
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, offBase) == 0);
|
|
7559
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, litLength) == 4);
|
|
7560
|
-
ZSTD_STATIC_ASSERT(offsetof(SeqDef, mlBase) == 6);
|
|
7561
|
-
|
|
7562
|
-
if (nbSequences > 3) {
|
|
7563
|
-
static const ZSTD_ALIGNED(16) U32 constAddition[4] = {
|
|
7564
|
-
ZSTD_REP_NUM, 0, -MINMATCH, 0
|
|
7565
|
-
};
|
|
7566
|
-
static const ZSTD_ALIGNED(16) U8 constMask[16] = {
|
|
7567
|
-
0, 1, 2, 3, 4, 5, 8, 9, 16, 17, 18, 19, 20, 21, 24, 25
|
|
7568
|
-
};
|
|
7569
|
-
static const ZSTD_ALIGNED(16) U16 constCounter[8] = {
|
|
7570
|
-
1, 1, 1, 1, 2, 2, 2, 2
|
|
7571
|
-
};
|
|
7572
|
-
|
|
7573
|
-
const uint32x4_t vaddition = vld1q_u32(constAddition);
|
|
7574
|
-
const uint8x16_t vmask = vld1q_u8(constMask);
|
|
7575
|
-
uint16x8_t vcounter = vld1q_u16(constCounter);
|
|
7576
|
-
uint16x8_t vindex01 = vdupq_n_u16(0);
|
|
7577
|
-
uint16x8_t vindex23 = vdupq_n_u16(0);
|
|
7578
|
-
|
|
7579
|
-
do {
|
|
7580
|
-
/* Load 4 ZSTD_Sequence (64 bytes). */
|
|
7581
|
-
const uint32x4_t vin0 = vld1q_u32(&inSeqs[n + 0].offset);
|
|
7582
|
-
const uint32x4_t vin1 = vld1q_u32(&inSeqs[n + 1].offset);
|
|
7583
|
-
const uint32x4_t vin2 = vld1q_u32(&inSeqs[n + 2].offset);
|
|
7584
|
-
const uint32x4_t vin3 = vld1q_u32(&inSeqs[n + 3].offset);
|
|
7585
|
-
|
|
7586
|
-
/* Add {ZSTD_REP_NUM, 0, -MINMATCH, 0} to each vector. */
|
|
7587
|
-
const uint8x16x2_t vadd01 = { {
|
|
7588
|
-
vreinterpretq_u8_u32(vaddq_u32(vin0, vaddition)),
|
|
7589
|
-
vreinterpretq_u8_u32(vaddq_u32(vin1, vaddition)),
|
|
7590
|
-
} };
|
|
7591
|
-
const uint8x16x2_t vadd23 = { {
|
|
7592
|
-
vreinterpretq_u8_u32(vaddq_u32(vin2, vaddition)),
|
|
7593
|
-
vreinterpretq_u8_u32(vaddq_u32(vin3, vaddition)),
|
|
7594
|
-
} };
|
|
7595
|
-
|
|
7596
|
-
/* Shuffle and pack bytes so each vector contains 2 SeqDef structures. */
|
|
7597
|
-
const uint8x16_t vout01 = vqtbl2q_u8(vadd01, vmask);
|
|
7598
|
-
const uint8x16_t vout23 = vqtbl2q_u8(vadd23, vmask);
|
|
7599
|
-
|
|
7600
|
-
/* Pack the upper 16-bits of 32-bit lanes for overflow check. */
|
|
7601
|
-
uint16x8_t voverflow01 = vuzp2q_u16(vreinterpretq_u16_u8(vadd01.val[0]),
|
|
7602
|
-
vreinterpretq_u16_u8(vadd01.val[1]));
|
|
7603
|
-
uint16x8_t voverflow23 = vuzp2q_u16(vreinterpretq_u16_u8(vadd23.val[0]),
|
|
7604
|
-
vreinterpretq_u16_u8(vadd23.val[1]));
|
|
7605
|
-
|
|
7606
|
-
/* Store 4 SeqDef structures. */
|
|
7607
|
-
vst1q_u32(&dstSeqs[n + 0].offBase, vreinterpretq_u32_u8(vout01));
|
|
7608
|
-
vst1q_u32(&dstSeqs[n + 2].offBase, vreinterpretq_u32_u8(vout23));
|
|
7609
|
-
|
|
7610
|
-
/* Create masks in case of overflow. */
|
|
7611
|
-
voverflow01 = vcgtzq_s16(vreinterpretq_s16_u16(voverflow01));
|
|
7612
|
-
voverflow23 = vcgtzq_s16(vreinterpretq_s16_u16(voverflow23));
|
|
7613
|
-
|
|
7614
|
-
/* Update overflow indices. */
|
|
7615
|
-
vindex01 = vbslq_u16(voverflow01, vcounter, vindex01);
|
|
7616
|
-
vindex23 = vbslq_u16(voverflow23, vcounter, vindex23);
|
|
7617
|
-
|
|
7618
|
-
/* Update counter for overflow check. */
|
|
7619
|
-
vcounter = vaddq_u16(vcounter, vdupq_n_u16(4));
|
|
7620
|
-
|
|
7621
|
-
n += 4;
|
|
7622
|
-
} while(n < nbSequences - 3);
|
|
7623
|
-
|
|
7624
|
-
/* Fixup indices in the second vector, we saved an additional counter
|
|
7625
|
-
in the loop to update the second overflow index, we need to add 2
|
|
7626
|
-
here when the indices are not 0. */
|
|
7627
|
-
{ uint16x8_t nonzero = vtstq_u16(vindex23, vindex23);
|
|
7628
|
-
vindex23 = vsubq_u16(vindex23, nonzero);
|
|
7629
|
-
vindex23 = vsubq_u16(vindex23, nonzero);
|
|
7630
|
-
}
|
|
7631
|
-
|
|
7632
|
-
/* Merge indices in the vectors, maximums are needed. */
|
|
7633
|
-
vindex01 = vmaxq_u16(vindex01, vindex23);
|
|
7634
|
-
vindex01 = vmaxq_u16(vindex01, vextq_u16(vindex01, vindex01, 4));
|
|
7635
|
-
|
|
7636
|
-
/* Compute `longLen`, maximums of matchLength and litLength
|
|
7637
|
-
with a preference on litLength. */
|
|
7638
|
-
{ U64 maxLitMatchIndices = vgetq_lane_u64(vreinterpretq_u64_u16(vindex01), 0);
|
|
7639
|
-
size_t maxLitIndex = (maxLitMatchIndices >> 16) & 0xFFFF;
|
|
7640
|
-
size_t maxMatchIndex = (maxLitMatchIndices >> 32) & 0xFFFF;
|
|
7641
|
-
longLen = maxLitIndex > maxMatchIndex ? maxLitIndex + nbSequences
|
|
7642
|
-
: maxMatchIndex;
|
|
7643
|
-
}
|
|
7644
|
-
}
|
|
7645
|
-
|
|
7646
|
-
/* Handle remaining elements. */
|
|
7647
|
-
for (; n < nbSequences; n++) {
|
|
7648
|
-
dstSeqs[n].offBase = OFFSET_TO_OFFBASE(inSeqs[n].offset);
|
|
7649
|
-
dstSeqs[n].litLength = (U16)inSeqs[n].litLength;
|
|
7650
|
-
dstSeqs[n].mlBase = (U16)(inSeqs[n].matchLength - MINMATCH);
|
|
7651
|
-
/* Check for long length > 65535. */
|
|
7652
|
-
if (UNLIKELY(inSeqs[n].matchLength > 65535 + MINMATCH)) {
|
|
7653
|
-
assert(longLen == 0);
|
|
7654
|
-
longLen = n + 1;
|
|
7655
|
-
}
|
|
7656
|
-
if (UNLIKELY(inSeqs[n].litLength > 65535)) {
|
|
7657
|
-
assert(longLen == 0);
|
|
7658
|
-
longLen = n + nbSequences + 1;
|
|
7659
|
-
}
|
|
7660
|
-
}
|
|
7661
|
-
return longLen;
|
|
7662
|
-
}
|
|
7663
|
-
|
|
7664
|
-
#else /* No vectorization. */
|
|
7665
|
-
|
|
7666
|
-
size_t convertSequences_noRepcodes(
|
|
7285
|
+
static size_t convertSequences_noRepcodes(
|
|
7667
7286
|
SeqDef* dstSeqs,
|
|
7668
7287
|
const ZSTD_Sequence* inSeqs,
|
|
7669
7288
|
size_t nbSequences)
|
|
@@ -7674,7 +7293,7 @@ size_t convertSequences_noRepcodes(
|
|
|
7674
7293
|
dstSeqs[n].offBase = OFFSET_TO_OFFBASE(inSeqs[n].offset);
|
|
7675
7294
|
dstSeqs[n].litLength = (U16)inSeqs[n].litLength;
|
|
7676
7295
|
dstSeqs[n].mlBase = (U16)(inSeqs[n].matchLength - MINMATCH);
|
|
7677
|
-
/*
|
|
7296
|
+
/* check for long length > 65535 */
|
|
7678
7297
|
if (UNLIKELY(inSeqs[n].matchLength > 65535+MINMATCH)) {
|
|
7679
7298
|
assert(longLen == 0);
|
|
7680
7299
|
longLen = n + 1;
|
|
@@ -7824,172 +7443,34 @@ BlockSummary ZSTD_get1BlockSummary(const ZSTD_Sequence* seqs, size_t nbSeqs)
|
|
|
7824
7443
|
}
|
|
7825
7444
|
}
|
|
7826
7445
|
|
|
7827
|
-
#
|
|
7446
|
+
#else
|
|
7828
7447
|
|
|
7829
7448
|
BlockSummary ZSTD_get1BlockSummary(const ZSTD_Sequence* seqs, size_t nbSeqs)
|
|
7830
7449
|
{
|
|
7831
7450
|
size_t totalMatchSize = 0;
|
|
7832
7451
|
size_t litSize = 0;
|
|
7833
|
-
size_t
|
|
7834
|
-
|
|
7835
|
-
|
|
7836
|
-
|
|
7837
|
-
|
|
7838
|
-
|
|
7839
|
-
|
|
7840
|
-
for (; i < nbSeqs; ) {
|
|
7841
|
-
size_t vl = __riscv_vsetvl_e32m2(nbSeqs - i);
|
|
7842
|
-
|
|
7843
|
-
vuint32m2x4_t v_tuple = __riscv_vlseg4e32_v_u32m2x4(
|
|
7844
|
-
(const aliased_u32*)((const void*)&seqs[i]),
|
|
7845
|
-
vl
|
|
7846
|
-
);
|
|
7847
|
-
vuint32m2_t v_lit = __riscv_vget_v_u32m2x4_u32m2(v_tuple, 1);
|
|
7848
|
-
vuint32m2_t v_match = __riscv_vget_v_u32m2x4_u32m2(v_tuple, 2);
|
|
7849
|
-
|
|
7850
|
-
// Check if any element has a matchLength of 0
|
|
7851
|
-
vbool16_t mask = __riscv_vmseq_vx_u32m2_b16(v_match, 0, vl);
|
|
7852
|
-
int first_zero = __riscv_vfirst_m_b16(mask, vl);
|
|
7853
|
-
|
|
7854
|
-
if (first_zero >= 0) {
|
|
7855
|
-
// Find the first zero byte and set the effective length to that index + 1 to
|
|
7856
|
-
// recompute the cumulative vector length of literals and matches
|
|
7857
|
-
vl = first_zero + 1;
|
|
7858
|
-
|
|
7859
|
-
// recompute the cumulative vector length of literals and matches
|
|
7860
|
-
v_lit_sum = __riscv_vredsum_vs_u32m2_u32m1(__riscv_vslidedown_vx_u32m2(v_lit, 0, vl), v_lit_sum, vl);
|
|
7861
|
-
v_match_sum = __riscv_vredsum_vs_u32m2_u32m1(__riscv_vslidedown_vx_u32m2(v_match, 0, vl), v_match_sum, vl);
|
|
7862
|
-
|
|
7863
|
-
i += vl;
|
|
7864
|
-
found_terminator = 1;
|
|
7865
|
-
assert(seqs[i - 1].offset == 0);
|
|
7452
|
+
size_t n;
|
|
7453
|
+
assert(seqs);
|
|
7454
|
+
for (n=0; n<nbSeqs; n++) {
|
|
7455
|
+
totalMatchSize += seqs[n].matchLength;
|
|
7456
|
+
litSize += seqs[n].litLength;
|
|
7457
|
+
if (seqs[n].matchLength == 0) {
|
|
7458
|
+
assert(seqs[n].offset == 0);
|
|
7866
7459
|
break;
|
|
7867
|
-
} else {
|
|
7868
|
-
|
|
7869
|
-
v_lit_sum = __riscv_vredsum_vs_u32m2_u32m1(v_lit, v_lit_sum, vl);
|
|
7870
|
-
v_match_sum = __riscv_vredsum_vs_u32m2_u32m1(v_match, v_match_sum, vl);
|
|
7871
|
-
i += vl;
|
|
7872
7460
|
}
|
|
7873
7461
|
}
|
|
7874
|
-
|
|
7875
|
-
totalMatchSize = __riscv_vmv_x_s_u32m1_u32(v_match_sum);
|
|
7876
|
-
|
|
7877
|
-
if (!found_terminator && i==nbSeqs) {
|
|
7462
|
+
if (n==nbSeqs) {
|
|
7878
7463
|
BlockSummary bs;
|
|
7879
7464
|
bs.nbSequences = ERROR(externalSequences_invalid);
|
|
7880
7465
|
return bs;
|
|
7881
7466
|
}
|
|
7882
7467
|
{ BlockSummary bs;
|
|
7883
|
-
bs.nbSequences =
|
|
7468
|
+
bs.nbSequences = n+1;
|
|
7884
7469
|
bs.blockSize = litSize + totalMatchSize;
|
|
7885
7470
|
bs.litSize = litSize;
|
|
7886
7471
|
return bs;
|
|
7887
7472
|
}
|
|
7888
7473
|
}
|
|
7889
|
-
|
|
7890
|
-
#else
|
|
7891
|
-
|
|
7892
|
-
/*
|
|
7893
|
-
* The function assumes `litMatchLength` is a packed 64-bit value where the
|
|
7894
|
-
* lower 32 bits represent the match length. The check varies based on the
|
|
7895
|
-
* system's endianness:
|
|
7896
|
-
* - On little-endian systems, it verifies if the entire 64-bit value is at most
|
|
7897
|
-
* 0xFFFFFFFF, indicating the match length (lower 32 bits) is zero.
|
|
7898
|
-
* - On big-endian systems, it directly checks if the lower 32 bits are zero.
|
|
7899
|
-
*
|
|
7900
|
-
* @returns 1 if the match length is zero, 0 otherwise.
|
|
7901
|
-
*/
|
|
7902
|
-
FORCE_INLINE_TEMPLATE int matchLengthHalfIsZero(U64 litMatchLength)
|
|
7903
|
-
{
|
|
7904
|
-
if (MEM_isLittleEndian()) {
|
|
7905
|
-
return litMatchLength <= 0xFFFFFFFFULL;
|
|
7906
|
-
} else {
|
|
7907
|
-
return (U32)litMatchLength == 0;
|
|
7908
|
-
}
|
|
7909
|
-
}
|
|
7910
|
-
|
|
7911
|
-
BlockSummary ZSTD_get1BlockSummary(const ZSTD_Sequence* seqs, size_t nbSeqs)
|
|
7912
|
-
{
|
|
7913
|
-
/* Use multiple accumulators for efficient use of wide out-of-order machines. */
|
|
7914
|
-
U64 litMatchSize0 = 0;
|
|
7915
|
-
U64 litMatchSize1 = 0;
|
|
7916
|
-
U64 litMatchSize2 = 0;
|
|
7917
|
-
U64 litMatchSize3 = 0;
|
|
7918
|
-
size_t n = 0;
|
|
7919
|
-
|
|
7920
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, litLength) + 4 == offsetof(ZSTD_Sequence, matchLength));
|
|
7921
|
-
ZSTD_STATIC_ASSERT(offsetof(ZSTD_Sequence, matchLength) + 4 == offsetof(ZSTD_Sequence, rep));
|
|
7922
|
-
assert(seqs);
|
|
7923
|
-
|
|
7924
|
-
if (nbSeqs > 3) {
|
|
7925
|
-
/* Process the input in 4 independent streams to reach high throughput. */
|
|
7926
|
-
do {
|
|
7927
|
-
/* Load `litLength` and `matchLength` as a packed `U64`. It is safe
|
|
7928
|
-
* to use 64-bit unsigned arithmetic here because the sum of `litLength`
|
|
7929
|
-
* and `matchLength` cannot exceed the block size, so the 32-bit
|
|
7930
|
-
* subparts will never overflow. */
|
|
7931
|
-
U64 litMatchLength = MEM_read64(&seqs[n].litLength);
|
|
7932
|
-
litMatchSize0 += litMatchLength;
|
|
7933
|
-
if (matchLengthHalfIsZero(litMatchLength)) {
|
|
7934
|
-
assert(seqs[n].offset == 0);
|
|
7935
|
-
goto _out;
|
|
7936
|
-
}
|
|
7937
|
-
|
|
7938
|
-
litMatchLength = MEM_read64(&seqs[n + 1].litLength);
|
|
7939
|
-
litMatchSize1 += litMatchLength;
|
|
7940
|
-
if (matchLengthHalfIsZero(litMatchLength)) {
|
|
7941
|
-
n += 1;
|
|
7942
|
-
assert(seqs[n].offset == 0);
|
|
7943
|
-
goto _out;
|
|
7944
|
-
}
|
|
7945
|
-
|
|
7946
|
-
litMatchLength = MEM_read64(&seqs[n + 2].litLength);
|
|
7947
|
-
litMatchSize2 += litMatchLength;
|
|
7948
|
-
if (matchLengthHalfIsZero(litMatchLength)) {
|
|
7949
|
-
n += 2;
|
|
7950
|
-
assert(seqs[n].offset == 0);
|
|
7951
|
-
goto _out;
|
|
7952
|
-
}
|
|
7953
|
-
|
|
7954
|
-
litMatchLength = MEM_read64(&seqs[n + 3].litLength);
|
|
7955
|
-
litMatchSize3 += litMatchLength;
|
|
7956
|
-
if (matchLengthHalfIsZero(litMatchLength)) {
|
|
7957
|
-
n += 3;
|
|
7958
|
-
assert(seqs[n].offset == 0);
|
|
7959
|
-
goto _out;
|
|
7960
|
-
}
|
|
7961
|
-
|
|
7962
|
-
n += 4;
|
|
7963
|
-
} while(n < nbSeqs - 3);
|
|
7964
|
-
}
|
|
7965
|
-
|
|
7966
|
-
for (; n < nbSeqs; n++) {
|
|
7967
|
-
U64 litMatchLength = MEM_read64(&seqs[n].litLength);
|
|
7968
|
-
litMatchSize0 += litMatchLength;
|
|
7969
|
-
if (matchLengthHalfIsZero(litMatchLength)) {
|
|
7970
|
-
assert(seqs[n].offset == 0);
|
|
7971
|
-
goto _out;
|
|
7972
|
-
}
|
|
7973
|
-
}
|
|
7974
|
-
/* At this point n == nbSeqs, so no end terminator. */
|
|
7975
|
-
{ BlockSummary bs;
|
|
7976
|
-
bs.nbSequences = ERROR(externalSequences_invalid);
|
|
7977
|
-
return bs;
|
|
7978
|
-
}
|
|
7979
|
-
_out:
|
|
7980
|
-
litMatchSize0 += litMatchSize1 + litMatchSize2 + litMatchSize3;
|
|
7981
|
-
{ BlockSummary bs;
|
|
7982
|
-
bs.nbSequences = n + 1;
|
|
7983
|
-
if (MEM_isLittleEndian()) {
|
|
7984
|
-
bs.litSize = (U32)litMatchSize0;
|
|
7985
|
-
bs.blockSize = bs.litSize + (litMatchSize0 >> 32);
|
|
7986
|
-
} else {
|
|
7987
|
-
bs.litSize = litMatchSize0 >> 32;
|
|
7988
|
-
bs.blockSize = bs.litSize + (U32)litMatchSize0;
|
|
7989
|
-
}
|
|
7990
|
-
return bs;
|
|
7991
|
-
}
|
|
7992
|
-
}
|
|
7993
7474
|
#endif
|
|
7994
7475
|
|
|
7995
7476
|
|
|
Binary file
|
|
@@ -707,7 +707,7 @@ ZSTD_safecopyLiterals(BYTE* op, BYTE const* ip, BYTE const* const iend, BYTE con
|
|
|
707
707
|
{
|
|
708
708
|
assert(iend > ilimit_w);
|
|
709
709
|
if (ip <= ilimit_w) {
|
|
710
|
-
ZSTD_wildcopy(op, ip,
|
|
710
|
+
ZSTD_wildcopy(op, ip, ilimit_w - ip, ZSTD_no_overlap);
|
|
711
711
|
op += ilimit_w - ip;
|
|
712
712
|
ip = ilimit_w;
|
|
713
713
|
}
|
|
@@ -800,7 +800,7 @@ ZSTD_storeSeq(SeqStore_t* seqStorePtr,
|
|
|
800
800
|
ZSTD_STATIC_ASSERT(WILDCOPY_OVERLENGTH >= 16);
|
|
801
801
|
ZSTD_copy16(seqStorePtr->lit, literals);
|
|
802
802
|
if (litLength > 16) {
|
|
803
|
-
ZSTD_wildcopy(seqStorePtr->lit+16, literals+16, litLength-16, ZSTD_no_overlap);
|
|
803
|
+
ZSTD_wildcopy(seqStorePtr->lit+16, literals+16, (ptrdiff_t)litLength-16, ZSTD_no_overlap);
|
|
804
804
|
}
|
|
805
805
|
} else {
|
|
806
806
|
ZSTD_safecopyLiterals(seqStorePtr->lit, literals, litEnd, litLimit_w);
|
|
@@ -1523,7 +1523,7 @@ typedef struct {
|
|
|
1523
1523
|
/* for benchmark */
|
|
1524
1524
|
size_t ZSTD_convertBlockSequences(ZSTD_CCtx* cctx,
|
|
1525
1525
|
const ZSTD_Sequence* const inSeqs, size_t nbSequences,
|
|
1526
|
-
int repcodeResolution);
|
|
1526
|
+
int const repcodeResolution);
|
|
1527
1527
|
|
|
1528
1528
|
typedef struct {
|
|
1529
1529
|
size_t nbSequences;
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|