Nick Terrell and Nick Terrell
0de4991942
Add a method for checking if ZSTD was compiled with flags that impact determinism
2025-03-07 10:31:19 -05:00
Nick Terrell and Nick Terrell
190a620974
[zstd] Remove global variables in dictBuilder
...
D50949782 fixed a race condition updating `g_displayLevel` by disabling display.
Instead of disabling display, delete the global variable and always "capture" a local `displayLevel` variable.
This also fixes `DISPLAYUPDATE()` by requiring the user to pass in the last update time as the first parameter.
2025-03-05 10:35:01 -05:00
Nick Terrell and Nick Terrell
d5b84f5a27
[zstd] Backport D49756856
2025-03-05 10:35:01 -05:00
Yann Collet
4e1723a7e4
fixed the script so that it fails when a copy fails
...
and also: fix the list of files, as `zdict.h` was incorrectly set.
2025-02-27 16:18:44 -08:00
Yann Collet
7340657c6f
update build_package.bat by using a subrouting
2025-02-27 16:18:44 -08:00
Yann Collet
e94e09dd7b
ensure that a copy error results in the task failing clearly
...
error code != 0, red status
checked by intentionally inserting an error in another run
2025-02-27 16:18:44 -08:00
Yann Collet and GitHub
a1a5154b69
Merge pull request #4312 from Cyan4973/musl_ci
...
introduce ZSTD_USE_C90_QSORT
2025-02-27 14:27:21 -08:00
Yann Collet and GitHub
22b2fd2517
Merge pull request #4317 from hirohira9119/fix-function-signature
...
Fix function signature mismatch for ZSTD_convertBlockSequences
2025-02-27 13:03:03 -08:00
Yann Collet and GitHub
d6fbaaac99
Merge pull request #4320 from sebres/patch-1
...
build_package.bat: fix path to zstd_errors.h, avoid silently ignore of the errors if build failed
2025-02-26 15:15:03 -08:00
Yann Collet
dca9791862
fixed minor C++ compat warnings
2025-02-26 14:30:29 -08:00
Sergey G. Brester and GitHub
f0d3173203
build_package.bat: don't swallow the error(s) by copy, exit with error if failed somewhere
2025-02-26 20:02:48 +01:00
Sergey G. Brester and GitHub
97bc43cc68
build_package.bat: fix path to zstd_errors.h (it is in lib not in lib/common)
...
closes gh-4318
2025-02-26 19:27:44 +01:00
Yann Collet
db2d205ada
fixed -Wconversion for lib/decompress/zstd_decompress_block.c
2025-02-26 10:01:05 -08:00
Yann Collet
2413f17322
fixed -Wconversion for cover.c
2025-02-26 08:33:01 -08:00
Yann Collet
8ffa27d93b
fixed -Wconversion for divsufsort.c
2025-02-26 08:12:11 -08:00
Yann Collet
e635221f1b
fixed -Wconversion for zdict
2025-02-26 08:07:51 -08:00
Yann Collet
30281d889f
fix conversion warning
2025-02-26 07:41:34 -08:00
hirohira
2840631dc1
Fix function signature mismatch for ZSTD_convertBlockSequences
2025-02-26 08:23:48 +09:00
Yann Collet
fd5498a179
document ZSTD_USE_C90_QSORT
2025-02-21 12:48:26 -08:00
Yann Collet
ebfa660b82
introduce ZSTD_USE_C90_QSORT
2025-02-21 11:36:30 -08:00
Yann Collet
d2c562b803
update hrlog comment
2025-02-10 10:48:56 -08:00
Yann Collet
67fad95f79
derive hashratelog from hashlog when only hashlog is set
2025-02-10 10:46:37 -08:00
Yann Collet and Yann Collet
09d7e34ed8
adjust mml
2025-02-10 10:46:37 -08:00
Yann Collet and Yann Collet
d5e4698267
fix boundary condition
2025-02-10 10:46:37 -08:00
Yann Collet and Yann Collet
72406b71c3
update hrlog rule to favor compression ratio a bit more at low levels
2025-02-10 10:46:37 -08:00
Yann Collet and Yann Collet
f26cc54f37
dynamic bucket sizes
2025-02-10 10:46:37 -08:00
Yann Collet and Yann Collet
4609a40b89
dynamically adjust hratelog and ldmml based on strategy
2025-02-10 10:46:37 -08:00
Yann Collet
23e5f80390
Revert "pass dictionary loading method as parameter"
...
This reverts commit 821fc567f93a415e9fbe856271ccd452ee7acf07.
2025-02-05 18:47:26 -08:00
Yann Collet
c7cd7dc04b
better MT fluidity
...
--patch-from no longer blocked on first job dictionary loading
2025-02-05 18:42:00 -08:00
Yann Collet
f11bd19c7f
ensure cdict is properly reset to NULL
2025-02-05 18:42:00 -08:00
Yann Collet
7406d2b6eb
skips the need to create a temporary cdict for --patch-from
...
thus saving a bit of memory and a little bit of cpu time
2025-02-05 18:42:00 -08:00
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
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
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 and GitHub
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 and GitHub
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
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
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