summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* updated documentation : no more issue with 32-bit compilation on recent ↵Yann Collet2022-09-121-21/+8
| | | | compilers
* updated Github Actions tests documentationYann Collet2022-09-091-11/+12
| | | | notably regarding ubsan test status (now enabled)
* Merge pull request #1160 from lz4/ubsan_hcYann Collet2022-09-091-18/+18
|\ | | | | fixed a few remaining ubsan warnings in lz4hc
| * fixed a few ubsan warnings in lz4hcYann Collet2022-09-091-18/+18
|/ | | | mostly related to pointer arithmetic involving NULL ptr.
* Merge pull request #1159 from lz4/ubsan2Yann Collet2022-09-091-18/+6
|\ | | | | attempt to enable ubsan tests in CI
| * attempt to enable ubsan tests in CIYann Collet2022-09-081-18/+6
|/
* Merge pull request #1158 from lz4/fix1157Yann Collet2022-09-083-8/+37
|\ | | | | allocation optimization for lz4frame compression
| * added LZ4F_compressUpdate() in fullbenchYann Collet2022-09-082-1/+31
| |
| * allocation optimization for lz4frame compressionYann Collet2022-09-081-7/+6
|/ | | | | | | | | | | | | | | | | | | | | | | as noted by @yixiutt, the temporary buffer inside lz4frame compression is being invalidated at end of compression, forcing it to be re-allocated at next compression job. This shouldn't be necessary. This change was introduced in #236, as a way to fix #232, but neither the issue is explained, nor why the patch fixes it. This patch revert to previous behavior, where temporary buffer is kept between compression calls. This results in a net reduction of allocation workload. Additionally, the temporary buffer should only need malloc(), not calloc(), thus saving initialization. This diff implements both changes. Long fuzzer tests will be run to ensure that no sanitizer warning get triggered. Additionally : fixed a minor ubsan warning in LZ4F_decompress().
* Merge pull request #1150 from ↵Yann Collet2022-08-191-1/+1
|\ | | | | | | | | lz4/dependabot/github_actions/actions/upload-artifact-3 Bump actions/upload-artifact from 1 to 3
| * Bump actions/upload-artifact from 1 to 3dependabot[bot]2022-08-191-1/+1
|/ | | | | | | | | | | | | | Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 1 to 3. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v1...v3) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
* Merge pull request #1149 from lz4/dependabot/github_actions/actions/checkout-3Yann Collet2022-08-191-27/+27
|\ | | | | Bump actions/checkout from 2 to 3
| * Bump actions/checkout from 2 to 3dependabot[bot]2022-08-191-27/+27
|/ | | | | | | | | | | | | | | Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v3) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
* Merge pull request #1148 from ↵Yann Collet2022-08-191-1/+1
|\ | | | | | | | | lz4/dependabot/github_actions/actions/setup-python-4 Bump actions/setup-python from 2 to 4
| * Bump actions/setup-python from 2 to 4dependabot[bot]2022-08-191-1/+1
|/ | | | | | | | | | | | | | Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v2...v4) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
* Merge pull request #1147 from tristan957/dependabotYann Collet2022-08-191-0/+7
|\ | | | | Add dependabot
| * Add dependabotTristan Partin2022-08-191-0/+7
|/ | | | Dependabot is configured to update GitHub actions. It will check weekly.
* Merge pull request #1142 from tristan957/ciYann Collet2022-08-171-0/+4
|\ | | | | Cancel in-progress CI if a new commit workflow supplants it
| * Cancel in-progress CI if a new commit workflow supplants itTristan Partin2022-08-171-0/+4
|/ | | | | This is useful when repushing to a PR very quickly and when merging to dev very quickly.
* update NEWS for v1.9.4Yann Collet2022-08-151-0/+2
|
* Merge pull request #1136 from t-mat/msvc-17.3Yann Collet2022-08-1213-31/+1456
|\ | | | | Support MSVC 2022 (version 17.3)
| * Add note about RC_INVOKEDTakayuki Matsuoka2022-08-121-0/+13
| |
| * Fix: replace strtoull with _strtoui64 for MSVC2010Takayuki Matsuoka2022-08-121-0/+8
| | | | | | | | https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/strtoui64-wcstoui64-strtoui64-l-wcstoui64-l
| * trigger GitHub actionsTakayuki Matsuoka2022-08-120-0/+0
| |
| * Fix: remove unused valueTakayuki Matsuoka2022-08-121-1/+0
| | | | | | | | | | | | | | | | This patch fixes the following error from "make staticAnalyze" datagencli.c:106:21: warning: Value stored to 'size' is never read size=0; ^ ~
| * Suppress false positive warning from MSVC (fuzzer.c)Takayuki Matsuoka2022-08-121-2/+10
| | | | | | | | | | | | | | Suppress the following false positive warnings from MSVC: - Disable all arithmetic overflow (C26451) - Suppress C6385: Reading invalid data from 'compressedBuffer'. - Add ULL suffix to unsigned 64-bits constants.
| * Suppress false positive warning from MSVC (datagencli.c)Takayuki Matsuoka2022-08-121-28/+4
| | | | | | | | | | | | | | | | | | | | | | MSVC 2022 reports the follwing false positve warnings: lz4\tests\datagencli.c(110): warning C26451: Arithmetic overflow: Using operator '-' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator '-' to avoid overflow (io.2). lz4\tests\datagencli.c(134): warning C26451: Arithmetic overflow: Using operator '-' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator '-' to avoid overflow (io.2). lz4\tests\datagencli.c(146): warning C26451: Arithmetic overflow: Using operator '-' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator '-' to avoid overflow (io.2). Although they're absolutely compiler's and static analyzer's bug, it'd always be nice to use the standard library.
| * Suppress warning from rc.exeTakayuki Matsuoka2022-08-121-0/+4
| | | | | | | | | | | | | | | | | | | | Since rc.exe (the resource compiler) is legacy compiler, it truncates preprocessor symbol name length to 32 chars. And it reports the following warning lz4\build\VS2022\..\..\lib\lz4.h(314): warning RC4011: identifier truncated to 'LZ4_STATIC_LINKING_ONLY_DISABLE' lz4\build\VS2022\..\..\lib\lz4.h(401): warning RC4011: identifier truncated to 'LZ4_STATIC_LINKING_ONLY_DISABLE' This patch detects rc.exe and just skips long symbol.
| * Suppress false positive warning from MSVCTakayuki Matsuoka2022-08-121-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | MSVC (17.3 or earlier) reports the following warning lz4\lib\lz4.c(527): warning C6385: Reading invalid data from 'v'. Line 527 is : LZ4_memcpy(&v[4], v, 4); But, obviously v[0..3] is always filled with meaningful value. Therefore, this warning report is wrong. We must revisit this issue with future version of MSVC.
| * Update MSVC 2022 project's PlatformToolset to v143Takayuki Matsuoka2022-08-127-28/+28
| |
| * Clone MSVC project (from VS2017 to VS2022)Takayuki Matsuoka2022-08-129-0/+1410
| |
* | Merge pull request #1135 from t-mat/github-actions-update-2022-0812Yann Collet2022-08-121-5/+8
|\ \ | |/ |/| GH-Actions: Add ubuntu-22.04 and the latest C/C++ compilers for Linux
| * Add ubuntu-22.04 and the latest C/C++ compilers for LinuxTakayuki Matsuoka2022-08-121-5/+8
| |
* | Merge pull request #1134 from lz4/faster_BD4Yann Collet2022-08-121-16/+22
|\ \ | |/ |/| faster CLI decompression speed for frames compressed with -BD4 setting
| * faster CLI decompression speed for frames with -BD4 settingYann Collet2022-08-121-16/+22
|/ | | | | | | | | | | lz4frame favors the faster prefix mode when decompressing a frame with linked blocks. This significantly improved CLI decompression on files compressed with -BD4 setting. On my laptop, decompressing `enwik9` went from 0.89s to 0.52s. This improvement is only for linked blocks. It's more visible for small block sizes.
* Merge pull request #1133 from SpaceIm/fix/cmake-minimum-required-positionYann Collet2022-08-121-4/+4
|\ | | | | cmake: move `cmake_minimum_required()` before `project()`
| * cmake: move cmake_minimum_required() before project()SpaceIm2022-08-111-4/+4
| | | | | | | | | | cmake_minimum_required() must always be the first instruction of a CMakeLists. project() should come after cmake_minimum_required() as soon as possible. Therefore option() are moved after project().
* | Merge pull request #1132 from lz4/prepv194Yann Collet2022-08-116-73/+172
|\ \ | |/ |/| Update documentation in preparation for release v1.9.4
| * updated man pageYann Collet2022-08-112-8/+16
| |
| * updated documentation in anticipation for `v1.9.4` releaseYann Collet2022-08-115-65/+156
|/
* Merge pull request #1131 from t-mat/doc-freestandingYann Collet2022-08-112-1/+18
|\ | | | | Doc freestanding
| * Add short description of LZ4_FREESTANDING and _DISABLE_MEMORY_ALLOCATIONTakayuki Matsuoka2022-08-111-0/+12
| |
| * Fix document for LZ4_STATIC_LINKING_ONLY_DISABLE_MEMORY_ALLOCATION in lz4.cTakayuki Matsuoka2022-08-111-1/+6
|/
* Merge pull request #1129 from t-mat/disable-memory-alloc-add-docYann Collet2022-08-102-0/+15
|\ | | | | Add document for LZ4_STATIC_LINKING_ONLY_DISABLE_MEMORY_ALLOCATION
| * Fix: Disable prototypes in header fileTakayuki Matsuoka2022-08-061-0/+4
| |
| * Add: Doxygen comment for LZ4_STATIC_LINKING_ONLY_DISABLE_MEMORY_ALLOCATIONTakayuki Matsuoka2022-08-061-0/+11
| |
* | Merge pull request #1130 from t-mat/freestandingYann Collet2022-08-109-33/+328
|\ \ | |/ |/| Add LZ4_FREESTANDING
| * Add short document of LZ4_FREESTANDING to lz4.hTakayuki Matsuoka2022-08-101-4/+11
| |
| * Add freestanding test to specific target in ci.ymlTakayuki Matsuoka2022-08-081-30/+36
| | | | | | | | | | The 'freestanding' flag indicates a capability of compiling and executing freestanding code. Currently it requires Linux, x86_64 and (relatively newer) gcc/g++.
| * Add test-freestanding to MakefileTakayuki Matsuoka2022-08-081-0/+4
| |