lp:~pcsx2-team/pcsx2-github-mirror/+git/zstd

Owned by PCSX2 Team
Get this repository:
git clone https://git.launchpad.net/~pcsx2-team/pcsx2-github-mirror/+git/zstd

Import details

Import Status: Reviewed

This repository is an import of the Git repository at https://github.com/facebook/zstd.git.

The next import is scheduled to run .

Last successful import was .

Import started on juju-98ee42-prod-launchpad-codeimport-3 and finished taking 30 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-3 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-2 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-0 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-5 and finished taking 40 seconds — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 1 minute — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-3 and finished taking 50 seconds — see the log

Branches

Name Last Modified Last Commit
dev 2024-02-27 21:28:32 UTC
Merge pull request #3916 from facebook/no_sprintf

Author: Yann Collet
Author Date: 2024-02-27 21:28:32 UTC

Merge pull request #3916 from facebook/no_sprintf

removed sprintf usage from zstdcli.c

superBlock_trackUncompressed 2024-02-26 22:31:12 UTC
sizeBlockSequences() also tracks uncompressed size

Author: Yann Collet
Author Date: 2024-02-26 22:31:12 UTC

sizeBlockSequences() also tracks uncompressed size

and only defines a sub-block boundary when
it believes that it is compressible.

It's effectively an optimization,
avoiding a compression cycle to reach the same conclusion.

targetCBlock_moreRegular 2024-02-26 22:31:12 UTC
sizeBlockSequences() also tracks uncompressed size

Author: Yann Collet
Author Date: 2024-02-26 22:31:12 UTC

sizeBlockSequences() also tracks uncompressed size

and only defines a sub-block boundary when
it believes that it is compressible.

It's effectively an optimization,
avoiding a compression cycle to reach the same conclusion.

dependabot/github_actions/github/codeql-action-3.24.5 2024-02-26 05:59:24 UTC
Bump github/codeql-action from 3.23.0 to 3.24.5

Author: dependabot[bot]
Author Date: 2024-02-26 05:59:24 UTC

Bump github/codeql-action from 3.23.0 to 3.24.5

Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.23.0 to 3.24.5.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/e5f05b81d5b6ff8cfa111c80c22c5fd02a384118...47b3d888fe66b639e431abf22ebca059152f1eea)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

no_sprintf 2024-02-25 07:03:40 UTC
removed sprintf usage from zstdcli.c

Author: Yann Collet
Author Date: 2024-02-25 07:03:40 UTC

removed sprintf usage from zstdcli.c

some static analyzers flag this standard C90 function as unsafe.

targetCBlockSize 2024-02-24 09:59:16 UTC
reduced minimum compressed block size

Author: Yann Collet
Author Date: 2024-02-24 09:59:16 UTC

reduced minimum compressed block size

with the intention to match the transport layer size,
such as Ethernet and 4G mobile networks.

setup_msys2_v2.22.0 2024-02-21 08:22:04 UTC
updated setup-msys2 to v2.22.0

Author: Yann Collet
Author Date: 2024-02-21 08:22:04 UTC

updated setup-msys2 to v2.22.0

following a warning in recent test reports

```
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: msys2/setup-msys2@5beef6d11f48bba68b9eb503e3adc60b23c0cc36. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
```

lorem2 2024-02-21 07:36:04 UTC
fix include order

Author: Yann Collet
Author Date: 2024-02-21 07:36:04 UTC

fix include order

fuzz_debuglevel 2024-02-09 00:38:20 UTC
fix fuzz issue 5131069967892480

Author: Yann Collet
Author Date: 2024-02-09 00:38:20 UTC

fix fuzz issue 5131069967892480

fix5921623844651008 2024-02-06 21:01:14 UTC
fix issue 5921623844651008

Author: Yann Collet
Author Date: 2024-02-06 20:15:54 UTC

fix issue 5921623844651008

ossfuzz managed to create a scenario which triggers an `assert`.
This fixes it, by giving +1 more space for the backward search pass.

fix_3793 2024-02-06 02:32:25 UTC
added or updated code comments

Author: Yann Collet
Author Date: 2024-02-06 02:32:25 UTC

added or updated code comments

as suggested by @terrelln,
to make the code of the optimal parser a bit more understandable.

gh-pages 2024-02-02 17:43:32 UTC
added mongodb-js variant

Author: Yann Collet
Author Date: 2024-02-02 17:43:32 UTC

added mongodb-js variant

lorem 2024-01-29 23:50:21 UTC
blindfix meson recipe

Author: Yann Collet
Author Date: 2024-01-29 23:50:21 UTC

blindfix meson recipe

note: absence of GLOB capability within meson makes its maintenance more painful.

sparc64 2024-01-29 04:25:04 UTC
add sparc64 compilation test

Author: Yann Collet
Author Date: 2024-01-29 04:25:04 UTC

add sparc64 compilation test

solaris_test 2024-01-29 02:38:53 UTC
fixed path

Author: Yann Collet
Author Date: 2024-01-29 02:38:53 UTC

fixed path

cmake_test 2024-01-28 01:30:06 UTC
fix cmakebuild test

Author: Yann Collet
Author Date: 2024-01-27 23:09:21 UTC

fix cmakebuild test

write it in a way which is more compatible with older versions of cmake (<3.13)

Also:
fix pzstd compilation (notably on macos)

disable_intelcet 2024-01-27 23:37:29 UTC
disable Intel CET Compatibility tests

Author: Yann Collet
Author Date: 2024-01-27 23:37:29 UTC

disable Intel CET Compatibility tests

The binary blob that must be downloaded from intel.com is no longer available

oldgrep 2024-01-16 20:14:35 UTC
made playTests.sh more compatible with older versions of grep

Author: Yann Collet
Author Date: 2024-01-16 20:14:35 UTC

made playTests.sh more compatible with older versions of grep

replaced `\+` by `*`.
`\+` means `[1-N]`,
while `*` means `[0-N]`,
so it's not strictly equivalent
but `\+` happens to be badly supported on some flavors of grep,
and for the purpose of these tests, `*` is good enough.

grep_e 2024-01-15 19:16:46 UTC
playTests.sh does no longer needs grep -E

Author: Yann Collet
Author Date: 2024-01-15 19:16:46 UTC

playTests.sh does no longer needs grep -E

it makes the test script more portable across posix systems
because `grep -E` is not guaranteed
while `grep` is fairly common.

v1.5.5-kernel-cherrypicks 2023-11-20 20:30:47 UTC
[huf] Improve fast huffman decoding speed in linux kernel

Author: Nick Terrell
Author Date: 2023-11-18 02:20:19 UTC

[huf] Improve fast huffman decoding speed in linux kernel

gcc in the linux kernel was not unrolling the inner loops of the Huffman
decoder, which was destroying decoding performance. The compiler was
generating crazy code with all sorts of branches. I suspect because of
Spectre mitigations, but I'm not certain. Once the loops were manually
unrolled, performance was restored.

Additionally, when gcc couldn't prove that the variable left shift in
the 4X2 decode loop wasn't greater than 63, it inserted checks to verify
it. To fix this, mask `entry.nbBits & 0x3F`, which allows gcc to eliete
this check. This is a no op, because `entry.nbBits` is guaranteed to be
less than 64.

Lastly, introduce the `HUF_DISABLE_FAST_DECODE` macro to disable the
fast C loops for Issue #3762. So if even after this change, there is a
performance regression, users can opt-out at compile time.

xxh082 2023-11-17 00:19:25 UTC
update license text

Author: Yann Collet
Author Date: 2023-11-17 00:19:25 UTC

update license text

dependabot/github_actions/ossf/scorecard-action-2.3.1 2023-10-30 05:53:19 UTC
Bump ossf/scorecard-action from 2.2.0 to 2.3.1

Author: dependabot[bot]
Author Date: 2023-10-30 05:53:19 UTC

Bump ossf/scorecard-action from 2.2.0 to 2.3.1

Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.2.0 to 2.3.1.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](https://github.com/ossf/scorecard-action/compare/08b4669551908b1024bb425080c797723083c031...0864cf19026789058feabb7e87baa5f140aac736)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

fix_flexArray_fse 2023-10-19 05:45:57 UTC
revert to manually defining DTable

Author: Yann Collet
Author Date: 2023-10-19 05:45:57 UTC

revert to manually defining DTable

thus avoiding the analyzer and ubsan to associate DTable to a size of 1.

fix_flexarray_cctx 2023-10-08 07:25:17 UTC
extended the fix to ZSTDMT's Buffer Pool

Author: Yann Collet
Author Date: 2023-10-08 07:25:17 UTC

extended the fix to ZSTDMT's Buffer Pool

fix3764 2023-10-08 02:34:22 UTC
fix #3764

Author: Yann Collet
Author Date: 2023-09-20 18:17:14 UTC

fix #3764

This answer a static analysis tool,
which complains that a buffer allocation is not free() just before exit().

In general, this requirement is not necessary, because invoking exit() will make the OS reclaim all buffers from the terminated process.

I could articulate this new requirement in a "not too heavy" way with the use of a new macro, `CONTROL_EXIT()`.
But "not too heavy" is still a form of maintenance burden: whenever the code is modified, by adding, removing or changing some of these buffers, it requires some form of coordination with exit points, which is easy to let go wrong.
Besides, I wouldn't be surprised if there were some more complex scenarios left, typically across multiple levels of functions, where a call to `exit()` is made while some other buffers, inaccessible from the function, are still allocated. Tackling such issues would require a very different approach, typically forbidding the use of `exit()`, which was meant to simplify code maintenance by reducing the nb and complexity of error paths.
I question the need to make the code more complex to read and maintain, just to tackle a largely theoretical problem with no practical impact on target platforms.

fix_x32 2023-09-28 04:18:20 UTC
fix x32 tests on Github CI

Author: Yann Collet
Author Date: 2023-09-28 04:18:20 UTC

fix x32 tests on Github CI

ubuntu-22.04 seems to have problems with x32 recently
switching to ubuntu-20.04 which seems to work fine so far

https://github.com/actions/runner-images/issues/8397

estimate_doc 2023-09-13 18:35:19 UTC
added some documentation on ZSTD_estimate*Size() variants

Author: Yann Collet
Author Date: 2023-09-13 18:35:19 UTC

added some documentation on ZSTD_estimate*Size() variants

as a follow up for #3747

ActionsCheckoutv400 2023-09-12 21:03:43 UTC
fix version comments for actions/checkout

Author: Yann Collet
Author Date: 2023-09-12 21:03:43 UTC

fix version comments for actions/checkout

make2 2023-09-12 20:46:03 UTC
minor simplification for dependency generation

Author: Yann Collet
Author Date: 2023-08-28 04:33:32 UTC

minor simplification for dependency generation

also : fix zstd-nomt exclusion and test

release 2023-04-04 20:13:52 UTC
Merge pull request #3595 from facebook/dev

Author: Yann Collet
Author Date: 2023-04-04 20:13:52 UTC

Merge pull request #3595 from facebook/dev

v1.5.5 last changes

windows_ci4 2023-01-11 18:11:55 UTC
fix 32-bit gcc mingw test

Author: Elliot Gorokhovsky
Author Date: 2023-01-05 18:48:05 UTC

fix 32-bit gcc mingw test

v1.5.2-kernel-cherrypicks 2022-10-21 22:27:26 UTC
[lazy] Use switch instead of indirect function calls.

Author: Nick Terrell
Author Date: 2022-10-20 00:04:35 UTC

[lazy] Use switch instead of indirect function calls.

Use a switch statement to select the search function instead of an
indirect function call. This results in a sizable performance win.

This PR is a modification of the approach taken in PR #2828.
When I measured performance for that commit, it was neutral.
However, I now see a performance regression on gcc, but still
neutral on clang. I'm measuring on the same platform, but with
newer compilers. The new approach beats both the current dev
branch and the baseline before PR #2828 was merged.

This PR is necessary for Issue #3275, to update zstd in the kernel.
Without this PR there is a large regression in greedy - btlazy2
compression speed. With this PR it is about neutral.

gcc version: 12.2.0
clang version: 14.0.6
dataset: silesia.tar

| Compiler | Level | Dev Speed (MB/s) | PR Speed (MB/s) | Delta |
|----------|-------|------------------|-----------------|--------|
| gcc | 5 | 102.6 | 113.7 | +10.8% |
| gcc | 7 | 66.6 | 74.8 | +12.3% |
| gcc | 9 | 51.5 | 58.9 | +14.3% |
| gcc | 13 | 14.3 | 14.3 | +0.0% |
| clang | 5 | 108.1 | 114.8 | +6.2% |
| clang | 7 | 68.5 | 72.3 | +5.5% |
| clang | 9 | 53.2 | 56.2 | +5.6% |
| clang | 13 | 14.3 | 14.7 | +2.8% |

The binary size stays just about the same for clang and gcc, measured
using the `size` command:

| Compiler | Branch | Text | Data | BSS | Total |
|----------|--------|---------|------|-----|---------|
| gcc | dev | 1127950 | 3312 | 280 | 1131542 |
| gcc | PR | 1123422 | 2512 | 280 | 1126214 |
| clang | dev | 1046254 | 3256 | 216 | 1049726 |
| clang | PR | 1048198 | 2296 | 216 | 1050710 |

staging 2022-02-23 03:58:18 UTC
Add extra space to match linux kernel

Author: Nick Terrell
Author Date: 2022-02-23 03:58:18 UTC

Add extra space to match linux kernel

refactor_blocksplit 2022-01-27 19:06:16 UTC
minor refactor to blocksplit

Author: Yann Collet
Author Date: 2022-01-27 19:06:16 UTC

minor refactor to blocksplit

fix2966_part4 2022-01-25 21:29:35 UTC
updated regression test results

Author: Yann Collet
Author Date: 2022-01-03 20:57:09 UTC

updated regression test results

parameters adaptation not only help speed,
it also helps compression ratio.

earlyUpdateLiterals 2022-01-08 01:00:33 UTC
early update literals

Author: Yann Collet
Author Date: 2022-01-08 01:00:33 UTC

early update literals

for better cost estimation in the following series for matches.

Unfortunately, this does not necessarily result in better compression.
Results are all over the places,
with best outcome observed for silesia/x-ray
but most other files tend to get slightly worse after this change.

It's strange because it seems that we are just providing more accurate information for the cost estimator.

Anyway, as it also increases code complexity,
it's probably not interesting enough for now.

part4_stableSrc 2022-01-02 07:26:59 UTC
make stableSrc compatible with regular streaming API

Author: Yann Collet
Author Date: 2022-01-02 07:15:34 UTC

make stableSrc compatible with regular streaming API

including flushStream().

Now the only condition is for `input.size` to continuously grow.

lazy_avx2 2021-12-21 23:25:20 UTC
attempt a sse2/avx2 branch of the lazy match detector

Author: Yann Collet
Author Date: 2021-12-21 23:24:45 UTC

attempt a sse2/avx2 branch of the lazy match detector

ultra_init 2021-09-30 03:44:12 UTC
Merge branch 'dev' into ultra_init

Author: Yann Collet
Author Date: 2021-09-30 03:44:12 UTC

Merge branch 'dev' into ultra_init

hardware_acceleration_integration 2021-08-19 15:41:47 UTC
Add in integration for hardware acceleration

Author: senhuang42
Author Date: 2021-08-19 15:09:53 UTC

Add in integration for hardware acceleration

travisTest 2021-05-13 16:36:19 UTC
updated meson test

Author: Yann Collet
Author Date: 2021-05-13 16:34:28 UTC

updated meson test

hopefully, bionic will have a more recent version of python
required to install meson.

master 2020-12-17 07:53:13 UTC
removed incorrect test

Author: Yann Collet
Author Date: 2020-12-17 07:53:13 UTC

removed incorrect test

fixassert 2020-07-15 19:43:11 UTC
fixed incorrect assert()

Author: Yann Collet
Author Date: 2020-07-15 19:40:59 UTC

fixed incorrect assert()

Incredibly evaded detection so far,
probably because -size_t is still perfectly defined size_t
which seems good enough for gcc and clang,
but Visual finds that rather fishy.

vtorri 2020-01-18 00:32:18 UTC
fix installation with MSYS2+mingw-w64 (#1960)

Author: Yann Collet
Author Date: 2020-01-18 00:32:18 UTC

fix installation with MSYS2+mingw-w64 (#1960)

Co-authored-by: vtorri <vincent.torri@gmail.com>

144 of 44 results
This repository contains Public information 
Everyone can see this information.