]> git.ipfire.org Git - thirdparty/zstd.git/log
thirdparty/zstd.git
6 months agoDo not vary row matchfinder selection based on availability of SSE2/Neon 4230/head
Victor Zhang [Fri, 3 Jan 2025 17:35:18 +0000 (09:35 -0800)] 
Do not vary row matchfinder selection based on availability of SSE2/Neon

Move towards a stronger guarantee of reproducibility by removing this small difference for machines without SSE2/Neon.
The SIMD behavior is now the default for all platforms.

6 months ago[opt] Fix too short of match getting generated
Nick Terrell [Fri, 20 Dec 2024 22:32:28 +0000 (17:32 -0500)] 
[opt] Fix too short of match getting generated

The optimal parser with LDM enabled using minMatch > 3 could generate a match
length of 3 when minMatch >= 4. This is not allowed.

1. Fix the bug
2. Add validation logic to `ZSTD_buildSeqStore()` in debug mode for all block
   compressors that checks we never generate too short a match. This way we don't
   rely on the `generate_sequences` fuzzer to find this issue.

Credit to OSS-Fuzz

6 months agoMerge pull request #4229 from facebook/noFseek
Victor Zhang [Fri, 3 Jan 2025 06:42:00 +0000 (22:42 -0800)] 
Merge pull request #4229 from facebook/noFseek

Support for libc variants without fseeko/ftello

6 months agochore: indentation alignment 4229/head
Victor Zhang [Thu, 2 Jan 2025 23:10:40 +0000 (15:10 -0800)] 
chore: indentation alignment

6 months agoPR feedback
Victor Zhang [Thu, 2 Jan 2025 23:05:58 +0000 (15:05 -0800)] 
PR feedback

6 months agoOops
Victor Zhang [Thu, 2 Jan 2025 22:17:24 +0000 (14:17 -0800)] 
Oops

6 months agoSupport for libc variants without fseeko/ftello
Victor Zhang [Thu, 2 Jan 2025 22:02:10 +0000 (14:02 -0800)] 
Support for libc variants without fseeko/ftello

Some older Android libc implementations don't support `fseeko` or `ftello`.
This commit adds a new compile-time macro `LIBC_NO_FSEEKO` as well as a usage in CMake for old Android APIs.

6 months agoMerge pull request #4228 from facebook/skippableMagicVariant
Yann Collet [Thu, 2 Jan 2025 18:57:49 +0000 (10:57 -0800)] 
Merge pull request #4228 from facebook/skippableMagicVariant

ZSTD_getFrameHeader() for skippable frames

7 months agoupdate type names 4228/head
Yann Collet [Sun, 29 Dec 2024 22:25:33 +0000 (14:25 -0800)] 
update type names

naming convention: Type names should start with a Capital letter (after the prefix)

7 months agoMerge pull request #4227 from facebook/doc_skippableFrame
Yann Collet [Sun, 29 Dec 2024 21:27:35 +0000 (13:27 -0800)] 
Merge pull request #4227 from facebook/doc_skippableFrame

clarify documentation for Frame-level methods invoked on a skippable frame

7 months agoimprove ZSTD_getFrameHeader on skippable frames
Yann Collet [Sun, 29 Dec 2024 20:26:04 +0000 (12:26 -0800)] 
improve ZSTD_getFrameHeader on skippable frames

now reports:
- the header size
- the magic variant (within @dictID field)

7 months agoclarify doc on Frame-level methods when invoked on a skippable frame 4227/head
Yann Collet [Sun, 29 Dec 2024 10:35:53 +0000 (02:35 -0800)] 
clarify doc on Frame-level methods when invoked on a skippable frame

following discussion at #4226

7 months agoMerge pull request #4217 from facebook/ZSTD_compressSequencesAndLiterals
Yann Collet [Thu, 26 Dec 2024 19:41:44 +0000 (11:41 -0800)] 
Merge pull request #4217 from facebook/ZSTD_compressSequencesAndLiterals

ZSTD_compressSequencesAndLiterals

7 months agofixed another invalid scenario 4217/head
Yann Collet [Tue, 24 Dec 2024 05:15:50 +0000 (21:15 -0800)] 
fixed another invalid scenario

compressSequencesAndLiterals() doesn't support sequence validation

7 months agoadd one valid test case
Yann Collet [Tue, 24 Dec 2024 03:43:17 +0000 (19:43 -0800)] 
add one valid test case

ZSTD_compressSequencesAndLiterals() may return a specific error code
when data to compress is non-compressible.

7 months agoadded fuzzer test for compressSequencesAndLiterals()
Yann Collet [Tue, 24 Dec 2024 02:42:51 +0000 (18:42 -0800)] 
added fuzzer test for compressSequencesAndLiterals()

piggy-backing onto existing compressSequences() fuzzer test

7 months ago[cmake] Fix -z noexecstack portability
Nick Terrell [Fri, 20 Dec 2024 17:40:32 +0000 (09:40 -0800)] 
[cmake] Fix -z noexecstack portability

Summary:
Issue reported by @ryandesign and @MarcusCalhoun-Lopez.

CMake doesn't support spaces in flags. This caused older versions of gcc to
ignore the unknown flag "-z noexecstack" on MacOS since it was interpreted as a
single flag, not two separate flags. Then, during compilation it was treated as
"-z" "noexecstack", which was correctly forwarded to the linker. But the MacOS
linker does not support `-z noexecstack` so compilation failed.

The fix is to use `-Wl,-z,noexecstack`. This is never misinterpreted by a
compiler. However, not all compilers support this syntax to forward flags to the
linker. To fix this issue, we check if all the relevant `noexecstack` flags have
been successfully set, and if they haven't we disable assembly.

See also PR#4056 and PR#4061. I decided to go a different route because this is
simpler. It might not successfully set these flags on some compilers, but in that
case it also disables assembly, so they aren't required.

Test Plan:
```
mkdir build-cmake
cmake ../build/cmake/CMakeLists.txt
make -j
```

See that the linker flag is successfully detected & that assembly is enabled.

Run the same commands on MacOS which doesn't support `-Wl,-z,noexecstack` and see
that everything compiles and that `LD_FLAG_WL_Z_NOEXECSTACK` and
`ZSTD_HAS_NOEXECSTACK` are both false.

7 months agorestore invocation of ZSTD_entropyCompressSeqStore()
Yann Collet [Fri, 20 Dec 2024 17:03:26 +0000 (09:03 -0800)] 
restore invocation of ZSTD_entropyCompressSeqStore()

in the ZSTD_compressSequences() pipeline

7 months agominor: use MEM_writeLE24()
Yann Collet [Fri, 20 Dec 2024 00:11:46 +0000 (16:11 -0800)] 
minor: use MEM_writeLE24()

so that an empty frame needs only 3 bytes of dstCapacity.

7 months agoadded parameter litCapacity
Yann Collet [Thu, 19 Dec 2024 23:55:11 +0000 (15:55 -0800)] 
added parameter litCapacity

to ZSTD_compressSequencesAndLiterals()
to enforce the litCapacity >= litSize+8 condition.

7 months agoadd a check, to return an error if Sequence validation is enabled
Yann Collet [Thu, 19 Dec 2024 23:39:57 +0000 (15:39 -0800)] 
add a check, to return an error if Sequence validation is enabled

since ZSTD_compressSequencesAndLiterals() doesn't support it.

7 months agofixed minor error in preparation of one fullbench scenario
Yann Collet [Thu, 19 Dec 2024 23:00:12 +0000 (15:00 -0800)] 
fixed minor error in preparation of one fullbench scenario

7 months agoensure that srcSize is controlled
Yann Collet [Thu, 19 Dec 2024 22:41:33 +0000 (14:41 -0800)] 
ensure that srcSize is controlled

7 months agoadd dedicated error code for special case
Yann Collet [Thu, 19 Dec 2024 17:45:28 +0000 (09:45 -0800)] 
add dedicated error code for special case

ZSTD_compressSequencesAndLiterals() cannot produce an uncompressed block

7 months agoadded a test for ZSTD_compressSequencesAndLiterals
Yann Collet [Thu, 19 Dec 2024 15:38:14 +0000 (07:38 -0800)] 
added a test for ZSTD_compressSequencesAndLiterals

checks that srcSize is present in the frame header
and bounds the window size.

7 months agoZSTD_compressSequencesAndLiterals requires srcSize as parameter
Yann Collet [Thu, 19 Dec 2024 15:26:38 +0000 (07:26 -0800)] 
ZSTD_compressSequencesAndLiterals requires srcSize as parameter

this makes it possible to adjust windowSize to its tightest.

7 months agofixed minor error in one benchmark scenario
Yann Collet [Wed, 18 Dec 2024 06:27:09 +0000 (22:27 -0800)] 
fixed minor error in one benchmark scenario

7 months agofixed minor conversion warning
Yann Collet [Wed, 18 Dec 2024 06:08:43 +0000 (22:08 -0800)] 
fixed minor conversion warning

7 months agoimproved speed of the Sequences converter
Yann Collet [Wed, 18 Dec 2024 05:33:26 +0000 (21:33 -0800)] 
improved speed of the Sequences converter

7 months agoadded benchmark for ZSTD_convertBlockSequences_wBlockDelim()
Yann Collet [Wed, 18 Dec 2024 01:25:57 +0000 (17:25 -0800)] 
added benchmark for ZSTD_convertBlockSequences_wBlockDelim()

7 months agochange name to ZSTD_convertSequences*()
Yann Collet [Tue, 17 Dec 2024 22:24:29 +0000 (14:24 -0800)] 
change name to ZSTD_convertSequences*()

7 months agoattempt to silence Visual Studio warning about fopen()
Yann Collet [Tue, 17 Dec 2024 05:48:10 +0000 (21:48 -0800)] 
attempt to silence Visual Studio warning about fopen()

7 months agofixed incorrect assert
Yann Collet [Tue, 17 Dec 2024 05:29:20 +0000 (21:29 -0800)] 
fixed incorrect assert

7 months agoremoved fullbench-dll project from visual solutions
Yann Collet [Tue, 17 Dec 2024 05:23:30 +0000 (21:23 -0800)] 
removed fullbench-dll project from visual solutions

7 months agoupdate Visual Studio solutions
Yann Collet [Tue, 17 Dec 2024 05:05:24 +0000 (21:05 -0800)] 
update Visual Studio solutions

7 months agoadded tests
Yann Collet [Tue, 17 Dec 2024 02:08:14 +0000 (18:08 -0800)] 
added tests

check that ZSTD_compressAndLiterals() also controls that the `srcSize` field is exact.

7 months agoZSTD_compressSequencesAndLiterals() now supports multi-blocks frames.
Yann Collet [Tue, 17 Dec 2024 02:05:40 +0000 (18:05 -0800)] 
ZSTD_compressSequencesAndLiterals() now supports multi-blocks frames.

7 months agochange advanced parameter name: ZSTD_c_repcodeResolution
Yann Collet [Mon, 16 Dec 2024 21:21:08 +0000 (13:21 -0800)] 
change advanced parameter name: ZSTD_c_repcodeResolution

and updated its documentation.
Note: older name ZSTD_c_searchForExternalRepcodes remains supported via #define

7 months agominor: cleaner function parameter repcodeResolution
Yann Collet [Mon, 16 Dec 2024 21:08:16 +0000 (13:08 -0800)] 
minor: cleaner function parameter repcodeResolution

7 months agoupdated documentation on validateSequence
Yann Collet [Mon, 16 Dec 2024 20:54:52 +0000 (12:54 -0800)] 
updated documentation on validateSequence

7 months agooptimization: instantiate specialized version without Sequence checking code
Yann Collet [Mon, 16 Dec 2024 19:39:25 +0000 (11:39 -0800)] 
optimization: instantiate specialized version without Sequence checking code

results in +4% compression speed,
thanks to removal of branches in the hot loop.

7 months agominor optimization: only track seqPos->posInSrc when validateSequences is enabled
Yann Collet [Mon, 16 Dec 2024 19:31:28 +0000 (11:31 -0800)] 
minor optimization: only track seqPos->posInSrc when validateSequences is enabled

note: very minor saving, no performance impact

7 months agominor doc update
Yann Collet [Mon, 16 Dec 2024 07:07:31 +0000 (23:07 -0800)] 
minor doc update

7 months agominor optimization for ZSTD_compressSequencesAndLiterals()
Yann Collet [Mon, 16 Dec 2024 00:14:38 +0000 (16:14 -0800)] 
minor optimization for ZSTD_compressSequencesAndLiterals()

does not need to track and update internal `litPtr`.
note: does not measurably impact performance.

7 months agominor conversion warning fix
Yann Collet [Sun, 15 Dec 2024 07:46:21 +0000 (23:46 -0800)] 
minor conversion warning fix

7 months agofullbench: new scenario: compressSequencesAndLiterals()
Yann Collet [Sun, 15 Dec 2024 07:38:18 +0000 (23:38 -0800)] 
fullbench: new scenario: compressSequencesAndLiterals()

7 months agofullbench: switch default generator to lorem ipsum
Yann Collet [Sat, 14 Dec 2024 20:34:26 +0000 (12:34 -0800)] 
fullbench: switch default generator to lorem ipsum

which creates more "realistic" scenarios than former compressible noise.

The legacy data generator remains accessible,
it is triggered when requesting an explicit compressibility factor (-P#).

7 months agoadd the compressSequences() benchmark scenario
Yann Collet [Sat, 14 Dec 2024 01:22:19 +0000 (17:22 -0800)] 
add the compressSequences() benchmark scenario

7 months agofullbench: preparation functions are now in charge of allocating buffers
Yann Collet [Sat, 14 Dec 2024 00:23:54 +0000 (16:23 -0800)] 
fullbench: preparation functions are now in charge of allocating buffers

7 months agominor variable renaming
Yann Collet [Fri, 13 Dec 2024 17:56:41 +0000 (09:56 -0800)] 
minor variable renaming

7 months agominor: test reordering
Yann Collet [Fri, 13 Dec 2024 08:14:24 +0000 (00:14 -0800)] 
minor: test reordering

7 months agorefactor fullbench
Yann Collet [Fri, 13 Dec 2024 01:50:14 +0000 (17:50 -0800)] 
refactor fullbench

to make it easier to add new scenarios

7 months agoprepare fullbench for a refactor
Yann Collet [Fri, 13 Dec 2024 01:29:11 +0000 (17:29 -0800)] 
prepare fullbench for a refactor

7 months agoadded unit tests to ZSTD_compressSequencesAndLiterals()
Yann Collet [Thu, 12 Dec 2024 00:13:22 +0000 (16:13 -0800)] 
added unit tests to ZSTD_compressSequencesAndLiterals()

seems to work as expected,
correctly control that `litSize` and `srcSize` are exactly correct.

7 months agoproduced ZSTD_compressSequencesAndLiterals() as a separate pipeline
Yann Collet [Wed, 11 Dec 2024 22:31:09 +0000 (14:31 -0800)] 
produced ZSTD_compressSequencesAndLiterals() as a separate pipeline

only supports explicit delimiter mode, at least for the time being

7 months agominor: more accurate variable scope
Yann Collet [Wed, 11 Dec 2024 02:24:18 +0000 (18:24 -0800)] 
minor: more accurate variable scope

7 months agoZSTD_SequenceCopier_f no returns the nb of bytes consumed from input
Yann Collet [Wed, 11 Dec 2024 01:51:20 +0000 (17:51 -0800)] 
ZSTD_SequenceCopier_f no returns the nb of bytes consumed from input

which feels much more natural

7 months agocodemod: ZSTD_cParamMode_e -> ZSTD_CParamMode_e
Yann Collet [Wed, 11 Dec 2024 01:07:19 +0000 (17:07 -0800)] 
codemod: ZSTD_cParamMode_e -> ZSTD_CParamMode_e

7 months agocodemod: ZSTD_paramSwitch_e -> ZSTD_ParamSwitch_e
Yann Collet [Wed, 11 Dec 2024 00:54:53 +0000 (16:54 -0800)] 
codemod: ZSTD_paramSwitch_e -> ZSTD_ParamSwitch_e

7 months agominor simplification
Yann Collet [Wed, 11 Dec 2024 00:38:51 +0000 (16:38 -0800)] 
minor simplification

7 months agofix minor artifact error in single_file_lib
Yann Collet [Wed, 11 Dec 2024 00:21:47 +0000 (16:21 -0800)] 
fix minor artifact error in single_file_lib

7 months agodoc: add mention of frame checksum incompatibility
Yann Collet [Wed, 11 Dec 2024 00:17:41 +0000 (16:17 -0800)] 
doc: add mention of frame checksum incompatibility

for new prototype ZSTD_compressSequencesAndLiterals()

7 months agocodemod: ZSTD_blockCompressor -> ZSTD_BlockCompressor_f
Yann Collet [Wed, 11 Dec 2024 00:08:44 +0000 (16:08 -0800)] 
codemod: ZSTD_blockCompressor -> ZSTD_BlockCompressor_f

7 months agocodemod: rawSeqStore_t -> RawSeqStore_t
Yann Collet [Wed, 11 Dec 2024 00:04:01 +0000 (16:04 -0800)] 
codemod: rawSeqStore_t -> RawSeqStore_t

7 months agocodemod: repcodes_t -> Repcodes_t
Yann Collet [Wed, 11 Dec 2024 00:00:20 +0000 (16:00 -0800)] 
codemod: repcodes_t -> Repcodes_t

7 months agocodemod: ZSTD_matchState_t -> ZSTD_MatchState_t
Yann Collet [Tue, 10 Dec 2024 23:35:11 +0000 (15:35 -0800)] 
codemod: ZSTD_matchState_t -> ZSTD_MatchState_t

7 months agocodemod: ZSTD_buildSeqStore_e -> ZSTD_BuildSeqStore_e
Yann Collet [Tue, 10 Dec 2024 23:04:56 +0000 (15:04 -0800)] 
codemod: ZSTD_buildSeqStore_e -> ZSTD_BuildSeqStore_e

7 months agocodemod: ZSTD_sequencePosition -> ZSTD_SequencePosition
Yann Collet [Tue, 10 Dec 2024 23:01:43 +0000 (15:01 -0800)] 
codemod: ZSTD_sequencePosition -> ZSTD_SequencePosition

7 months agoenable proper type
Yann Collet [Tue, 10 Dec 2024 22:18:39 +0000 (14:18 -0800)] 
enable proper type

7 months agofix proper type for .forceNonContiguous
Yann Collet [Tue, 10 Dec 2024 22:14:07 +0000 (14:14 -0800)] 
fix proper type for .forceNonContiguous

7 months agoscope: ZSTD_copySequencesToSeqStore*() are private to ZSTD_compress.c
Yann Collet [Tue, 10 Dec 2024 22:11:51 +0000 (14:11 -0800)] 
scope: ZSTD_copySequencesToSeqStore*() are private to ZSTD_compress.c

no need to publish them outside of this unit.

7 months agominor: simplify ZSTD_selectSequenceCopier
Yann Collet [Tue, 10 Dec 2024 22:02:53 +0000 (14:02 -0800)] 
minor: simplify ZSTD_selectSequenceCopier

7 months agocodemod: ZSTD_sequenceCopier -> ZSTD_SequenceCopier_f
Yann Collet [Tue, 10 Dec 2024 22:00:09 +0000 (14:00 -0800)] 
codemod: ZSTD_sequenceCopier -> ZSTD_SequenceCopier_f

7 months agocodemod: ZSTD_sequenceFormat_e -> ZSTD_SequenceFormat_e
Yann Collet [Tue, 10 Dec 2024 21:58:11 +0000 (13:58 -0800)] 
codemod: ZSTD_sequenceFormat_e -> ZSTD_SequenceFormat_e

since it's a type name.

Note: in contrast with previous names, this one is on the Public API side.
So there is a #define, so that existing programs using ZSTD_sequenceFormat_e still work.

7 months agocreated ZSTD_entropyCompressSeqStore_wExtLitBuffer()
Yann Collet [Tue, 10 Dec 2024 21:33:48 +0000 (13:33 -0800)] 
created ZSTD_entropyCompressSeqStore_wExtLitBuffer()

can receive externally defined buffer of literals

7 months agoZSTD_entropyCompressSeqStore_internal() can accept an externally defined literals...
Yann Collet [Tue, 10 Dec 2024 20:02:44 +0000 (12:02 -0800)] 
ZSTD_entropyCompressSeqStore_internal() can accept an externally defined literals buffer

7 months agocodemod: ZSTD_defaultPolicy_e -> ZSTD_DefaultPolicy_e
Yann Collet [Tue, 10 Dec 2024 19:40:06 +0000 (11:40 -0800)] 
codemod: ZSTD_defaultPolicy_e -> ZSTD_DefaultPolicy_e

7 months agocodemod: symbolEncodingType_e -> SymbolEncodingType_e
Yann Collet [Tue, 10 Dec 2024 19:34:12 +0000 (11:34 -0800)] 
codemod: symbolEncodingType_e -> SymbolEncodingType_e

7 months agocodemod: ZSTD_sequenceLength -> ZSTD_SequenceLength
Yann Collet [Tue, 10 Dec 2024 19:27:03 +0000 (11:27 -0800)] 
codemod: ZSTD_sequenceLength -> ZSTD_SequenceLength

7 months agocodemod: seqStore_t -> SeqStore_t
Yann Collet [Tue, 10 Dec 2024 19:09:52 +0000 (11:09 -0800)] 
codemod: seqStore_t -> SeqStore_t

same idea, SeqStore_t is a type name, it should start with a Capital letter.

7 months agocodemod: seqDef -> SeqDef
Yann Collet [Tue, 10 Dec 2024 19:06:58 +0000 (11:06 -0800)] 
codemod: seqDef -> SeqDef

SeqDef is a type name, so it should start with a Capital letter.
It's an internal symbol, no impact on public API.

7 months agomove Sequences definition to zstd_compress_internal.h
Yann Collet [Tue, 10 Dec 2024 19:04:25 +0000 (11:04 -0800)] 
move Sequences definition to zstd_compress_internal.h

they should not be in common/zstd_internal.h,
since these definitions are not shared beyond lib/compress/.

7 months agocreated ZSTD_storeSeqOnly()
Yann Collet [Tue, 10 Dec 2024 05:39:34 +0000 (21:39 -0800)] 
created ZSTD_storeSeqOnly()

makes it possible to register a sequence without copying its literals.

7 months agopublish new symbol ZSTD_compressSequencesAndLiterals()
Yann Collet [Tue, 10 Dec 2024 02:17:34 +0000 (18:17 -0800)] 
publish new symbol ZSTD_compressSequencesAndLiterals()

7 months agoremoved debug echos
Bent [Thu, 19 Dec 2024 11:22:10 +0000 (12:22 +0100)] 
removed debug echos

7 months agoadded UNAME_TARGET_SYSTEM build flag to configure shared lib flags
Bent [Thu, 19 Dec 2024 11:16:08 +0000 (12:16 +0100)] 
added UNAME_TARGET_SYSTEM build flag to configure shared lib flags

7 months agoMerge pull request #4212 from diegonc/t/fix-test-on-gnuhurd
Yann Collet [Tue, 17 Dec 2024 04:43:34 +0000 (20:43 -0800)] 
Merge pull request #4212 from diegonc/t/fix-test-on-gnuhurd

tests: fix non-regular file test on GNU/Hurd

7 months agoMerge pull request #4213 from kevinjzhang/CI
Yann Collet [Tue, 17 Dec 2024 04:43:13 +0000 (20:43 -0800)] 
Merge pull request #4213 from kevinjzhang/CI

Move sanitizer CI jobs back to ubuntu-latest

7 months agoMerge pull request #4214 from facebook/ldm_bucketLog
Yann Collet [Tue, 17 Dec 2024 04:43:00 +0000 (20:43 -0800)] 
Merge pull request #4214 from facebook/ldm_bucketLog

minor: more accurate parameter for `ZSTD_ldm_insertEntry()`

7 months agominor: more accurate parameter 4214/head
Yann Collet [Sat, 14 Dec 2024 19:57:14 +0000 (11:57 -0800)] 
minor: more accurate parameter

just pass ldm_bucketLog, instead of the entire ldm* state

7 months agoMerge pull request #4210 from facebook/cm310
Victor Zhang [Fri, 13 Dec 2024 22:57:52 +0000 (14:57 -0800)] 
Merge pull request #4210 from facebook/cm310

Update cmake minimum requirement to 3.10

7 months agoRevert "Pin tsan and msan CI jobs to ubuntu-20.04 (#3945)" 4213/head
Elliot Gorokhovsky [Tue, 12 Mar 2024 15:26:01 +0000 (08:26 -0700)] 
Revert "Pin tsan and msan CI jobs to ubuntu-20.04 (#3945)"

This reverts commit ee6acaf26bbf842837513087c91776b83d4d9560.

7 months agoUpdate VERSION_LESS usage to VERSION_GREATER_THAN 4210/head
Victor Zhang [Thu, 12 Dec 2024 19:39:40 +0000 (11:39 -0800)] 
Update VERSION_LESS usage to VERSION_GREATER_THAN

7 months agoChange CLI to employ multithreading by default (#4211)
daniellerozenblit [Thu, 12 Dec 2024 18:09:29 +0000 (13:09 -0500)] 
Change CLI to employ multithreading by default (#4211)

* Change CLI to employ multithreading by default

* Document changes to benchmarking, print number of threads for display level >= 4, and add lower bound of 1 for the default number of threads

7 months agotests: fix non-regular file test on GNU/Hurd 4212/head
Diego Nieto Cid [Tue, 10 Dec 2024 13:20:32 +0000 (10:20 -0300)] 
tests: fix non-regular file test on GNU/Hurd

Since commit b21b03ca6 [1] the behaviour of writes to /dev/zero has been
fixed and now the non-regular file removal test no longer needs to be
done on /dev/random (which no longer works as random is not writable now).

[1] https://git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=b21b03ca624b89caeedfe58430cea4b40317d39f

7 months agoUpdate cmake minimum requirement to 3.10
Victor Zhang [Mon, 9 Dec 2024 18:53:38 +0000 (10:53 -0800)] 
Update cmake minimum requirement to 3.10

CMake warns on the current minimum requirement (3.5). Update to 3.10.
This means support is still available for the default on Ubuntu 18.04, which
exited LTS standard in April of 2023.
[draft]

7 months agoMerge pull request #4208 from facebook/dependabot/github_actions/msys2/setup-msys2...
Yann Collet [Mon, 9 Dec 2024 06:17:49 +0000 (22:17 -0800)] 
Merge pull request #4208 from facebook/dependabot/github_actions/msys2/setup-msys2-2.26.0

Bump msys2/setup-msys2 from 2.25.0 to 2.26.0

7 months agoBump msys2/setup-msys2 from 2.25.0 to 2.26.0 4208/head
dependabot[bot] [Mon, 9 Dec 2024 05:38:13 +0000 (05:38 +0000)] 
Bump msys2/setup-msys2 from 2.25.0 to 2.26.0

Bumps [msys2/setup-msys2](https://github.com/msys2/setup-msys2) from 2.25.0 to 2.26.0.
- [Release notes](https://github.com/msys2/setup-msys2/releases)
- [Changelog](https://github.com/msys2/setup-msys2/blob/main/CHANGELOG.md)
- [Commits](https://github.com/msys2/setup-msys2/compare/c52d1fa9c7492275e60fe763540fb601f5f232a1...d44ca8e88d8b43d56cf5670f91747359d5537f97)

---
updated-dependencies:
- dependency-name: msys2/setup-msys2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
7 months agoDisallow 32-bit mode in clang section
郑苏波 (Super Zheng) [Wed, 7 Aug 2024 03:22:50 +0000 (11:22 +0800)] 
Disallow 32-bit mode in clang section

Fix register %rbx is only available in 64-bit mode

8 months agoMerge pull request #4201 from rorosen/seek-table-create-null-check
Yann Collet [Wed, 27 Nov 2024 01:59:42 +0000 (17:59 -0800)] 
Merge pull request #4201 from rorosen/seek-table-create-null-check

prevent possible segfault when creating seek table