1
0
mirror of https://github.com/facebook/zstd.git synced 2025-07-29 11:21:22 +03:00
Commit Graph

11060 Commits

Author SHA1 Message Date
9fbed3330c Merge pull request #4251 from facebook/x32_bmi2
BMI2 detection in 32-bit mode
2025-01-19 07:37:57 -08:00
a556559841 no longer limit automated BMI2 detection to x64
this was previously no triggered in x86 32-bit mode,
due to a limitation in `bitstream.h`, that was fixed in #4248.

Now, `bmi2` will be automatically detected and triggered
at compilation time, if the corresponding instruction set is enabled,
even in 32-bit mode.

Also: updated library documentation, to feature STATIC_BMI2 build variable
2025-01-19 00:08:57 -08:00
e475dc4c05 Merge pull request #4250 from facebook/x86_32_avx2
added a CI test for x86 32-bit + avx2 combination
2025-01-18 23:54:51 -08:00
d2d74616c0 also add -mbmi2 to the compilation test 2025-01-18 22:58:03 -08:00
27d7940631 minor: cosmetic, indentation 2025-01-18 22:49:16 -08:00
0501095898 added -DSTATIC_BMI2=1 for the -mavx2 test 2025-01-18 22:49:16 -08:00
f0b5f65bca fixed minor static function declaration issue
in AVX2 mode only
2025-01-18 22:49:16 -08:00
35edbc20dc added avx2 (x64) compilation test 2025-01-18 22:49:16 -08:00
9efb09749b added a CI test for x86 32-bit + avx2 combination
which is expected to be quite rare, but nonetheless possible.

This test is initially expected to fail, before integration of #4248 fix
2025-01-18 22:49:16 -08:00
a469e7c083 Merge pull request #4248 from pps83/dev-bzhi32
Use _bzhi_u32 for 32-bit builds when building with STATIC_BMI2
2025-01-18 22:48:24 -08:00
167b00495d Merge pull request #4246 from pps83/dev-asmx64-win
[asm] Enable x86_64 asm for windows builds
2025-01-18 20:03:16 -08:00
eb2ceb4bc8 Merge pull request #4249 from facebook/zds_nonnull
minor: assert that state is not null
2025-01-18 18:56:46 -08:00
fcd684b9b4 update sizeof check 2025-01-19 02:37:35 +02:00
d60c4d75e9 remove unrelated changes 2025-01-19 02:36:00 +02:00
462484d5dc change to BitContainerType 2025-01-19 02:34:41 +02:00
26e5fb3614 handle 32bit size_t when building for x64 2025-01-18 23:37:50 +02:00
936927a427 handle 32bit size_t when building for x64 2025-01-18 23:30:55 +02:00
e8de8085f4 minor: assert that state is not null
replaces #4016
2025-01-18 13:08:04 -08:00
053e4bef20 Merge pull request #4247 from facebook/test_endMsg
Added a human-readable final success message at end of tests
2025-01-18 13:06:07 -08:00
4f3311f245 CI: replaced shortest target by check 2025-01-18 12:24:11 -08:00
ee17f4c6d2 Use _bzhi_u32 for 32-bit builds when building with STATIC_BMI2
`_bzhi_u64` is available only for 64-bit builds, while `BIT_getLowerBits` expects `nbBits` to be less than `BIT_MASK_SIZE` (`BIT_MASK_SIZE` is 32)
2025-01-18 21:33:04 +02:00
46e17b805b [asm] Enable x86_64 asm for windows builds 2025-01-18 05:33:08 +02:00
78275149ea Added a final success message at end of tests
so that a human reading the test log can determine everything was fine without consulting the shell error code.

Also: made `make check` slightly shorter by moving one longer test to `make test`
2025-01-17 19:30:55 -08:00
c8243b4724 Merge pull request #4242 from lalakii/dev
add prerelease option
2025-01-16 10:33:18 -08:00
319dc2911f Merge pull request #4235 from facebook/bench_nbThreads
benchmark mode specifies nb of threads with -v
2025-01-16 10:33:04 -08:00
19025f3da0 Merge pull request #4238 from szsam/patch-1
fix out-of-bounds array index access
2025-01-15 17:56:41 -08:00
33747e2569 Merge pull request #4232 from facebook/convertSequences_SSE
Improve speed of ZSTD_compressSequencesAndLiterals() using AVX2
2025-01-15 17:56:05 -08:00
87f0a4fbe0 restore full equation
do not solve the equation, even though some members cancel each other,
this is done for clarity,
we'll let the compiler do the resolution at compile time.
2025-01-15 17:11:27 -08:00
8bff69af86 Alignment instruction ZSTD_ALIGNED() in common/compiler.h 2025-01-15 17:11:27 -08:00
2f3ee8b530 changed code compilation test to employ ZSTD_ARCH_X86_AVX2 2025-01-15 17:11:27 -08:00
debe3d20d9 removed unused branch 2025-01-15 17:11:27 -08:00
6f8e6f3c97 create new compilation macro ZSTD_ARCH_X86_AVX2 2025-01-15 17:11:27 -08:00
e3181cfd32 minor code doc update 2025-01-15 17:11:27 -08:00
aa2cdf964f added compilation-time checks to ensure AVX2 code is valid
since it depends on a specific definition of ZSTD_Sequence structure.
2025-01-15 17:11:27 -08:00
57a4554192 removed unused variable 2025-01-15 17:11:27 -08:00
4aaf9cefe9 fix minor conversion warning 2025-01-15 17:11:27 -08:00
db3d48823a no need for specialized variant
the branch is not in the hot loop
2025-01-15 17:11:27 -08:00
cd53924eff removed erroneous #includes
that were automatically added by the editor without notification
2025-01-15 17:11:27 -08:00
ed0a8b8be1 AVX2 version of ZSTD_get1BlockSummary() 2025-01-15 17:11:27 -08:00
b6a4d5a8ba minor +10% speed improvement for scalar ZSTD_get1BlockSummary() 2025-01-15 17:11:27 -08:00
8eb2587432 added benchmark for get1BlockSummary() 2025-01-15 17:11:27 -08:00
bfc58f5ba2 generalize validation function 2025-01-15 17:11:27 -08:00
8d62164589 control long length within AVX2 implementation 2025-01-15 17:11:27 -08:00
d1f0e5fb97 fullbench can run a verification function
compressSequencesAndLiterals: fixed long lengths in scalar mode
2025-01-15 17:11:27 -08:00
886720442f initial implementation (incomplete)
needs to take care of long lengths > 65535
2025-01-15 17:11:27 -08:00
72277079fb Merge pull request #4243 from facebook/fix_ci
fix ci tests
2025-01-15 17:10:26 -08:00
0b96e6d42a fixed zlib test
new versions of the library generate a different error code
2025-01-15 16:31:00 -08:00
43626f1ce0 zlib-wrapper: separate test components to better understand what is failing 2025-01-15 16:05:42 -08:00
d4ae5c3752 update installed lib64gcc version 2025-01-15 15:52:27 -08:00
642157cc45 short-test-1: separate tests, giving each a name
to better observe where the problem might be
2025-01-15 15:39:20 -08:00