1
0
mirror of https://github.com/facebook/zstd.git synced 2025-09-11 11:51:02 +03:00
Commit Graph

11318 Commits

Author SHA1 Message Date
Yann Collet
220abe6da8 reduced memory usage
by avoiding to duplicate in memory
a dictionary that was passed by reference.
2025-02-05 18:42:00 -08:00
Yann Collet
85a44b233a always free .cdictLocal 2025-02-05 18:41:59 -08:00
Yann Collet
e637fc64c5 update type naming convention 2025-02-05 18:41:59 -08:00
Yann Collet
34ba14437a minor boundary change
improves compression ratio at low levels
2025-02-05 18:41:59 -08:00
Yann Collet
ffa66a6971 fix speed of --patch-from at high compression mode 2025-02-05 18:41:59 -08:00
Yann Collet
30e0f29c4d Merge pull request #4287 from facebook/warn_error
visual studio compilation tests: error out on warnings
2025-02-05 17:42:54 -08:00
Yann Collet
2949252923 fix minor conversion warnings 2025-02-05 17:01:19 -08:00
Yann Collet
e87d15938c more %zu warnings fixes 2025-02-05 16:48:19 -08:00
Yann Collet
590c22454e fix more %zu warnings 2025-02-05 16:36:54 -08:00
Yann Collet
f9c1850aa2 fix minor printf argument limitation on older mingw
which do not support `%zu` fields
2025-02-05 16:28:52 -08:00
Yann Collet
e117d79e22 fix minor alignment warning 2025-02-05 16:13:58 -08:00
Yann Collet
c39424ea87 fix minor alignment warning
this is a prototype definition error:
`_mm_storeu_si128()` should accept a `void*` pointer,
since it explicitly states that it accepts unaligned addresses
yet requiring a `__m128i*` tells otherwise, and requires the compiler the enforce this alignment.
2025-02-05 16:11:54 -08:00
Yann Collet
32dff04d32 fix one minor alignment warning
seems like a prototype interface error:
input parameter should have been `const void*`,
since the documentation is explicit that input doesn't have to be aligned,
but `const __m256i*` makes the compiler enforce it.
2025-02-05 15:46:44 -08:00
Yann Collet
5883ee6cc2 make visual studio tests error out on warnings 2025-02-05 15:38:39 -08:00
Yann Collet
8156a19cac Merge pull request #4286 from facebook/visual_clang_avx2
Fix Visual + ClangCL + AVX2 compilation
2025-02-05 15:30:51 -08:00
Yann Collet
54e9d46db4 added __clang__ to compiler-specific alignment attribute
when clang is used within msvc, `__GNUC__` isn't defined,
so testing `__clang__` explicitly is required.
2025-02-05 13:48:24 -08:00
Yann Collet
bcf404c0ab changed C11 keyword to _Alignas
so that it doesn't depend on #include
2025-02-05 13:25:14 -08:00
Yann Collet
6e1d02f1f0 adding a Visual + ClangCL + AVX2 compilation test 2025-02-05 13:20:44 -08:00
Victor Zhang
7b856e3028 Add noexecstack flag for gcc/clang C and CPP in Meson
The `-Wl,-z,noexecstack` and `-Wa,--noexecstack` flags are already set for CMake, but not for Meson.
This brings the flags to the Meson build as well. Note that this maintains the discrepancy in behavior
between CMake and Meson when it comes to enabling ASM: on CMake, the ZSTD_HAS_NOEXECSTACK variable
is set and these flags added for GCC/Clang and MinGW. Then later, the ZSTD_HAS_NOEXECSTACK variable
is checked (along with some other conditions) to enable or disable ASM. However on Meson, this logic
is restricted to simply checking for GCC/Clang. This patch maintains this behavior; noexecstack is
dependent on GCC/Clang only.
2025-02-04 15:20:39 -08:00
Yann Collet
26a2b5d5df Merge pull request #4265 from pps83/static-bmi2-check
Check `STATIC_BMI2` instead of `STATIC_BMI2 == 1`
2025-01-31 14:39:20 -08:00
Yann Collet
086ddcd9ba Merge pull request #4271 from tsdgeos/removedupe
cmake: Remove duplicated line
2025-01-31 14:38:19 -08:00
Yann Collet
b55ff3c61d Merge pull request #4278 from facebook/bench_x100
bench: better result alignment
2025-01-31 14:38:01 -08:00
Yann Collet
60f84f73fe bench: better result alignment
when displaying ratios > x100
2025-01-30 21:30:48 -08:00
Yann Collet
283fbd2dca Merge pull request #4264 from pps83/dev-static-bmi2
Move STATIC_BMI2 define to portability_macros.h
2025-01-30 11:11:51 -08:00
luau-project
8df6155495 CI: enable Intel LLVM C compiler (icx) check 2025-01-30 10:39:55 -03:00
Albert Astals Cid
de7c8b9842 cmake: Remove duplicated line 2025-01-28 00:22:35 +01:00
Yann Collet
6a65a43032 Merge pull request #4269 from luau-project/fix-rc-include
fix: quote include directory for resource compiler
2025-01-27 11:58:22 -08:00
luau-project
be1bf2469e fix: quote include directory for resource compiler 2025-01-27 15:18:55 -03:00
Yann Collet
1d088ba55c Merge pull request #4260 from gcabiddu/compress_sequences_kernel
[linux] Expose ZSTD_compressSequences*() in the kernel
2025-01-27 09:44:53 -08:00
Giovanni Cabiddu
92be4be810 [linux] Expose ZSTD_compressSequencesAndLiterals() in the kernel
Make the function ZSTD_compressSequencesAndLiterals() available in kernel
space. This will be used by Intel QAT driver.

Additionally, (1) expose the function ZSTD_CCtx_setParameter(), which is
required to set parameters before calling ZSTD_compressSequencesAndLiterals(),
(2) update the build process to include `compress/zstd_preSplit.o` and
(3) replace `asm/unaligned.h` with `linux/unaligned.h`.

Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
2025-01-27 15:24:22 +00:00
luau-project
6cd4204ee3 CI: build with CMake on source directory with spaces to reproduce #4268 2025-01-27 11:59:43 -03:00
Yann Collet
ab54285129 Merge pull request #4266 from pps83/rm-ZSTD_decompressSequences_t
Remove unused ZSTD_decompressSequences_t typedef
2025-01-26 22:55:46 -08:00
Pavel P
0cda0100ea fix formatting 2025-01-24 03:03:22 +02:00
Pavel P
f7e8fc339b Check STATIC_BMI2 instead of STATIC_BMI2 == 1 2025-01-24 03:03:21 +02:00
Pavel P
0a183620a3 Reorder __BMI2__ check
+ if `__BMI2__` defined, then set STATIC_BMI2 for all compilers
 + use `defined(_MSC_VER) && defined(__AVX2__)` as fallback for ms compiler
2025-01-24 03:02:47 +02:00
Pavel P
d486ccc9e9 Update comment for STATIC_BMI2 macro 2025-01-24 03:02:47 +02:00
Pavel P
1b15e888fc Move STATIC_BMI2 block as-is to portability_macros.h 2025-01-24 03:02:46 +02:00
Pavel P
59afb28c97 Remove unused ZSTD_decompressSequences_t typedef 2025-01-24 02:13:20 +02:00
Yann Collet
ea0aa030cd Merge pull request #4263 from pps83/dev-dyn-bmi2
Check `DYNAMIC_BMI2` instead of `DYNAMIC_BMI2 != 0`
2025-01-23 15:53:17 -08:00
Pavel P
1204626138 Check DYNAMIC_BMI2 instead of DYNAMIC_BMI2 != 0
`#if DYNAMIC_BMI2` is consistent with the rest of the code.

 + use spaces instead of tabs
2025-01-23 23:59:38 +02:00
Yann Collet
a7b59bcb7f Merge pull request #4257 from pps83/dev-x64test
Use _M_X64 only without mixing with _M_AMD64
2025-01-23 12:50:27 -08:00
Yann Collet
55c0c5bdca Merge pull request #4258 from pps83/dev-ZSTD_ALIGNED
Implement ZSTD_ALIGNED for ms compiler
2025-01-22 15:09:35 -08:00
Yann Collet
2ef57cf1e2 Merge pull request #4259 from Treata11/dev
Add support for Apple framework builds
2025-01-22 15:09:11 -08:00
Treata11
45c0e72c0a Instructions for Apple Framework builds 2025-01-22 22:54:03 +03:30
Treata11
becef672bb Build: Revert min version to 3.10 2025-01-22 22:53:41 +03:30
Treata11
03d5ad6fed Ignore generated framework artifacts
Signed-off-by: Treata11 <treata11@yahoo.com>
2025-01-21 21:06:54 +03:30
Treata11
897cec3876 Build: Add support for Apple frameworks
Signed-off-by: Treata11 <treata11@yahoo.com>
2025-01-21 20:58:27 +03:30
Pavel P
a0872a8372 Implement ZSTD_ALIGNED for ms compiler 2025-01-21 02:33:25 +02:00
Pavel P
6c1d1cc600 Use _M_X64 only without mixing with _M_AMD64 2025-01-21 02:27:39 +02:00
Yann Collet
f7c7553e4f Merge pull request #4255 from facebook/dependabot/github_actions/github/codeql-action-3.28.1
Bump github/codeql-action from 3.27.1 to 3.28.1
2025-01-19 23:18:33 -08:00