]>
git.ipfire.org Git - thirdparty/zlib-ng.git/log
Vladislav Shchapov [Wed, 28 Feb 2024 05:20:03 +0000 (10:20 +0500)]
Workaround for MSVC. By default MSVC does not define the __SSE*__ macros. Fix it if AVX is enabled.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Wed, 28 Feb 2024 05:16:12 +0000 (10:16 +0500)]
Add option to disable runtime CPU detection
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Wed, 28 Feb 2024 05:12:53 +0000 (10:12 +0500)]
Explicitly indicate functions are conditionally dispatched
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Mika Lindqvist [Sun, 25 Feb 2024 14:42:43 +0000 (16:42 +0200)]
[ARM] Override Clang x4 NEON intrinsics for Android
* Clang for Android requires 256-bit alignment for x4 loads and stores, which can't be guaranteed and is unnecessary
Vladislav Shchapov [Wed, 28 Feb 2024 05:31:43 +0000 (10:31 +0500)]
Rename cpu_functions.h to arch_functions.h in depcheck.cpp
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Mika Lindqvist [Mon, 19 Feb 2024 21:34:03 +0000 (23:34 +0200)]
[CI] Fix creating list of artifacts for CodeCov.
Marc Aldorasi [Fri, 16 Feb 2024 20:01:32 +0000 (15:01 -0500)]
Add more result variables to the cmake package configuration
Mika Lindqvist [Wed, 21 Feb 2024 14:02:20 +0000 (16:02 +0200)]
Add test for checking if -march=native needs -mfpu=neon for 32-bit ARM.
Mika Lindqvist [Mon, 19 Feb 2024 12:35:15 +0000 (14:35 +0200)]
Cleanup and update NMake Makefiles.
* Add depcheck.exe to validate NMake Makefiles
Hans Kristian Rosbach [Wed, 21 Feb 2024 10:44:18 +0000 (11:44 +0100)]
Move update_hash(), insert_string() and quick_insert_string() out of functable
and remove SSE4.2 and ACLE optimizations. The functable overhead is higher
than the benefit from using optimized functions.
Hans Kristian Rosbach [Wed, 21 Feb 2024 11:06:16 +0000 (12:06 +0100)]
Remove unused 's' parameter from HASH_CALC macro
Nathan Moinvaziri [Sat, 27 Jan 2024 23:50:54 +0000 (15:50 -0800)]
Remove deflate_state parameter from update_hash functions.
Cameron Cawley [Fri, 16 Feb 2024 16:43:49 +0000 (16:43 +0000)]
Inline CHUNKCOPY and CHUNKUNROLL
This slightly decreases the shared library size on x86_64 when both SSE2 and SSSE3 are enabled.
Cameron Cawley [Thu, 22 Feb 2024 12:09:51 +0000 (12:09 +0000)]
Remove mixing of SSE2 and SSSE3 chunkset code
dependabot[bot] [Thu, 22 Feb 2024 13:06:24 +0000 (13:06 +0000)]
Bump github/codeql-action from 2 to 3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [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/v2...v3)
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
dependabot[bot] [Thu, 22 Feb 2024 13:06:28 +0000 (13:06 +0000)]
Bump actions/upload-artifact from 3 to 4
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4)
---
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>
Hans Kristian Rosbach [Wed, 21 Feb 2024 18:37:53 +0000 (19:37 +0100)]
Don't export git/github-related files in tar/zip archives
Vladislav Shchapov [Wed, 21 Feb 2024 14:27:42 +0000 (19:27 +0500)]
Rename cpu_functions.h to arch_functions.h.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sat, 3 Feb 2024 16:32:28 +0000 (21:32 +0500)]
Move select for generic functions into generic_functions.h.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sat, 3 Feb 2024 16:26:57 +0000 (21:26 +0500)]
Split CPU features checks and CPU-specific function prototypes and reduce include-dependencies.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Hans Kristian Rosbach [Wed, 21 Feb 2024 18:32:51 +0000 (19:32 +0100)]
Add dependabot for github actions
Vladislav Shchapov [Sun, 18 Feb 2024 14:50:06 +0000 (19:50 +0500)]
Rename codecov.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Nathan Moinvaziri [Sun, 14 Jan 2024 04:28:38 +0000 (20:28 -0800)]
Fixed S390X configure builds not running in forks.
Mika Lindqvist [Sun, 18 Feb 2024 13:36:55 +0000 (15:36 +0200)]
Fix PCLMULQDQ support for IntelLLVM.
Mika Lindqvist [Tue, 20 Feb 2024 18:02:40 +0000 (20:02 +0200)]
Disable CodeCov for RISC-V as the toolchain doesn't support generating code coverage.
Mika Lindqvist [Mon, 19 Feb 2024 23:01:41 +0000 (01:01 +0200)]
Update mymindstorm/setup-emsdk to v14.
Mika Lindqvist [Mon, 19 Feb 2024 22:43:11 +0000 (00:43 +0200)]
Upgrade codecov/codecov-action to v4.
Pavel P [Wed, 14 Feb 2024 13:29:18 +0000 (15:29 +0200)]
Fix include paths
zlb-ng shouldn't require to have arch/generic in the include path
Pavel P [Wed, 14 Feb 2024 13:26:04 +0000 (15:26 +0200)]
Add missing checks for 64bit arm/intel with msvc compiler
Mika Lindqvist [Mon, 12 Feb 2024 18:53:32 +0000 (20:53 +0200)]
Disable Intel Compiler diagnostic message 10441.
Mika Lindqvist [Mon, 12 Feb 2024 13:30:43 +0000 (15:30 +0200)]
Upgrade ilammy/msvc-dev-cmd to v1.13.0
Mika T. Lindqvist [Mon, 12 Feb 2024 10:43:33 +0000 (12:43 +0200)]
Fix xsave intrinsic test for clang, and gcc 8.2 or later, and icc.
Vladislav Shchapov [Wed, 7 Feb 2024 19:22:54 +0000 (00:22 +0500)]
Allow overwrite NATIVEFLAG value by option NATIVE_ARCH_OVERRIDE.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Pavel P [Sun, 11 Feb 2024 15:33:03 +0000 (17:33 +0200)]
Increase alignment from 8 to 16 to avoid warnings with ms compiler
Fixing align attribute, makes ms compiler warn: 'internal_state': Alignment specifier is less than actual alignment (16), and will be ignored.
Increasing alignemnt fixes the warning
Pavel P [Sun, 11 Feb 2024 15:02:37 +0000 (17:02 +0200)]
Fix `deflate_state` alignment with MS or clang-cl compilers
When building with clang-cl, compiler produces the following warning:
zlib-ng/deflate.h(287,3): warning : attribute 'align' is ignored, place it after "struct" to apply attribute to type declaration [-Wignored-attributes]
zlib-ng/zbuild.h(196,34): note: expanded from macro 'ALIGNED_'
Repositioning align attribute after "struct" fixes the warning and aligns `deflate_state` correctly.
Hans Kristian Rosbach [Wed, 7 Feb 2024 20:25:53 +0000 (21:25 +0100)]
Avoid empty function by renaming bi_flush to zng_tr_flush_bits.
Hans Kristian Rosbach [Wed, 7 Feb 2024 18:21:36 +0000 (19:21 +0100)]
Remove branch that is almost impossible to hit in bi_flush().
Add case that handles sizes >=48.
Don Olmstead [Thu, 1 Feb 2024 20:49:11 +0000 (12:49 -0800)]
Relocate CMake target export definitions
When exporting a CMake target the `install(TARGETS ${ZLIB_INSTALL_LIBRARIES})` is repeated with an `EXPORT` parameter. On Windows this would install the `.dll` files into the `lib` directory.
Set the `EXPORT_NAME` earlier and unconditionally on the `TARGET`. Then move the `EXPORT` to a single `install(TARGETS)`.
Nathan Moinvaziri [Sun, 7 Jan 2024 01:55:25 +0000 (17:55 -0800)]
Use zng_alloc_aligned in unit tests to prevent having to use C++17.
alloc_aligned when using in C++ requires C++17 standard. zutil_p.h
include removed from test_crc32 since it was causing the same issue and was
not really needed.
Nathan Moinvaziri [Sun, 7 Jan 2024 01:15:06 +0000 (17:15 -0800)]
Memory alloc size must be a multiple of alignment for aligned_alloc.
Nathan Moinvaziri [Thu, 4 Jan 2024 22:32:06 +0000 (14:32 -0800)]
Prefer HAVE_ALIGNED_ALLOC when available in zng_alloc
Added some more helpful comments for people who come across this code.
Mark Adler [Mon, 29 Jan 2024 04:00:26 +0000 (20:00 -0800)]
Mark Adler [Mon, 29 Jan 2024 03:48:52 +0000 (19:48 -0800)]
Remove -w compile option in configure test.
Not all C compilers have a -w option.
madler/zlib#
88ec24670e9c484219392def5f2f4b5e3f839db3
gastush [Mon, 29 Jan 2024 03:45:57 +0000 (19:45 -0800)]
Fix cmake build on AIX.
The --version-script linker option is not supported by the linker on AIX systems
madler/zlib#
ade6825c4996f73d776b0ffa038360762bd318ae
Mark Adler [Mon, 29 Jan 2024 03:44:43 +0000 (19:44 -0800)]
Remove mentions of an official zlib DLL distribution.
There used to be one, but no more. It is up to the user or vendor
to compile zlib.
madler/zlib#
25263462377fa5c569947a40315815bd59e37f4b
Nathan Moinvaziri [Sun, 4 Feb 2024 22:18:56 +0000 (14:18 -0800)]
Add back gz_intmax for zlib compatibility when linking statically
Milan Bulat [Mon, 29 Jan 2024 03:43:23 +0000 (19:43 -0800)]
Make the existence of gz_intmax() unconditional.
gz_intmax() is noted in zlib.map. This assures it's always there.
madler/zlib#
01253ecd7e0a01d311670f2d03c61b82fc12d338
Mark Adler [Mon, 29 Jan 2024 03:39:17 +0000 (19:39 -0800)]
Note that the len2 argument of crc_combine*() must be non-negative.
If it is negative, then the code will enter an infinite loop.
madler/zlib#
36e369e1a54b35a978dc584496af69a07ec2d71a
Nathan Moinvaziri [Tue, 30 Jan 2024 17:15:06 +0000 (09:15 -0800)]
Enable LIT_MEM by default expect when WITH_REDUCED_MEM is ON.
Hans Wennborg [Tue, 30 Jan 2024 00:42:46 +0000 (16:42 -0800)]
Fix the copy of pending_buf in deflateCopy() for the LIT_MEM case.
madler/zlib#
60c31985ecdc2b40873564867e1ad2aef0b88697
Hans Wennborg [Tue, 30 Jan 2024 00:39:52 +0000 (16:39 -0800)]
Fix pending buffer overflow assert with LIT_MEM allocation.
Since each element in s->d_buf is 2 bytes, the sx index should be
multiplied by 2 in the assert.
Fixes madler/zlib#897
madler/zlib#
ee474ff2d11715485a87b123edbdd615ba218b88
Mark Adler [Mon, 29 Jan 2024 03:36:46 +0000 (19:36 -0800)]
Add bounds checking to ERR_MSG() macro, used by zError().
madler/zlib#
431a9b65eacab7efabf2230ba97ff426c0e07f9d
Mark Adler [Tue, 30 Jan 2024 00:38:32 +0000 (16:38 -0800)]
Add LIT_MEM define to use more memory for a small deflate speedup.
A bug fix in zlib 1.2.12 resulted in a slight slowdown (1-2%) of
deflate. This commit provides the option to #define LIT_MEM, which
uses more memory to reverse most of that slowdown. The memory for
the pending buffer and symbol buffers is increased by 25%, which
increases the total memory usage with the default parameters by
about 6%.
madler/zlib#
ac8f12c97d1afd9bafa9c710f827d40a407d3266
Xin LI [Mon, 29 Jan 2024 03:30:26 +0000 (19:30 -0800)]
Make internal functions static in the test code.
To avoid warnings when building with -Wmissing-prototypes.
madler/zlib#
bd9c329c1055a9265812352655ed2eec93f36e92
Mark Adler [Mon, 29 Jan 2024 03:26:17 +0000 (19:26 -0800)]
Fix bug in inflateSync() for data held in bit buffer.
madler/zlib#
5af7cef45eeef86ddf6ab00b4e363c1eecaf47b6
Nathan Moinvaziri [Mon, 29 Jan 2024 04:06:05 +0000 (20:06 -0800)]
Update copyright years in other source files.
Mark Adler [Mon, 29 Jan 2024 03:25:31 +0000 (19:25 -0800)]
Update copyright year in win32 resource files.
madler/zlib#
8988e03256e9c80766ac6899e86c3bc57c347efc
Hans Kristian Rosbach [Sat, 3 Feb 2024 11:46:10 +0000 (12:46 +0100)]
Remove unused code in makecrct.c
Hans Kristian Rosbach [Thu, 25 Jan 2024 09:32:23 +0000 (10:32 +0100)]
Add missing clean rule for arch/generic
Hans Kristian Rosbach [Thu, 25 Jan 2024 09:29:20 +0000 (10:29 +0100)]
Rename crc32_braid.c to crc32.c
Adam Stylinski [Sat, 27 Jan 2024 23:29:41 +0000 (00:29 +0100)]
Add support for handling alignment correction for input buffers down to 16 bytes in crc32_fold_[v]pclmulqdq
Hans Kristian Rosbach [Thu, 25 Jan 2024 12:28:10 +0000 (13:28 +0100)]
Speed up crc32_[v]pclmulqdq on small strings.
Hans Kristian Rosbach [Thu, 25 Jan 2024 20:48:06 +0000 (21:48 +0100)]
Add more fine-grained small-length benchmarking of adler32 and crc32.
Mika Lindqvist [Tue, 23 Jan 2024 05:42:29 +0000 (07:42 +0200)]
Generate CMake package configuration files
* For COMPAT mode, zlib-config.cmake and zlib-config-version.cmake
* For non-COMPAT mode, zlib-ng-config.cmake and zlib-ng-config-version.cmake
Nathan Moinvaziri [Mon, 22 Jan 2024 18:48:52 +0000 (10:48 -0800)]
Remove extern keyword from cpu_feature function declarations.
Nathan Moinvaziri [Sun, 21 Jan 2024 18:45:36 +0000 (10:45 -0800)]
Remove type declarations for z_stream/zng_stream from cpu_features.
Nathan Moinvaziri [Thu, 25 Jan 2024 14:09:25 +0000 (06:09 -0800)]
Split cpu_features.h by architecture.
Mika Lindqvist [Wed, 24 Jan 2024 20:48:00 +0000 (22:48 +0200)]
Fix regression caused by
2fa631e029084b75acd81db5d33fd4aa802fd082
* POWER8/9 feature checks were enabled even if the toolchain didn't support AT_HWCAP2
* Add detection if we need to include <linux/auxvec.h>
Adam Stylinski [Mon, 29 Jan 2024 14:34:08 +0000 (09:34 -0500)]
Removing some outdated comments
These were left on my part, the inline copy + checksum is the very
thing the function is doing.
Nathan Moinvaziri [Fri, 26 Jan 2024 01:38:25 +0000 (17:38 -0800)]
Set registers to zero to prevent GCC __get_cpuid bug.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77756
Nathan Moinvaziri [Fri, 26 Jan 2024 01:18:26 +0000 (17:18 -0800)]
Simplify architecture #ifdef in test_crc32.cc.
Nathan Moinvaziri [Thu, 25 Jan 2024 21:43:33 +0000 (13:43 -0800)]
Add VPCLMULQDQ crc32 tests to Google benchmarks
Vladislav Shchapov [Sat, 20 Jan 2024 18:59:54 +0000 (23:59 +0500)]
Improve x86 intrinsics dependencies.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sat, 20 Jan 2024 18:40:40 +0000 (23:40 +0500)]
Remove unused macro X86_MASK_INTRIN.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sat, 20 Jan 2024 15:40:07 +0000 (20:40 +0500)]
Reorder in which intrinsics support is checked.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Fri, 19 Jan 2024 19:29:22 +0000 (00:29 +0500)]
Fix x86 WITH_* options dependencies.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Fri, 19 Jan 2024 18:42:19 +0000 (23:42 +0500)]
Remove always true arch conditions.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Hans Kristian Rosbach [Thu, 4 Jan 2024 15:54:58 +0000 (16:54 +0100)]
Move compare256 and longest_match C fallbacks to arch/generic
Hans Kristian Rosbach [Thu, 4 Jan 2024 15:43:43 +0000 (16:43 +0100)]
Move include files out of match_tpl.h, to simplify dependency handling and
avoid attempting to parse the includes more times than needed.
Hans Kristian Rosbach [Thu, 4 Jan 2024 15:13:24 +0000 (16:13 +0100)]
Move slide_hash C fallback to arch/generic
Hans Kristian Rosbach [Thu, 4 Jan 2024 14:53:15 +0000 (15:53 +0100)]
Move insert_string and update_hash C fallbacks to arch/generic.
Also add missing insert_string dependencies to windows makefiles.
Hans Kristian Rosbach [Thu, 4 Jan 2024 14:36:19 +0000 (15:36 +0100)]
Move chunkset and inffast C fallbacks to arch/generic
Hans Kristian Rosbach [Wed, 3 Jan 2024 14:59:40 +0000 (15:59 +0100)]
Move crc32 C fallbacks to arch/generic
Hans Kristian Rosbach [Wed, 3 Jan 2024 14:22:10 +0000 (15:22 +0100)]
Move adler32 C fallbacks to arch/generic
Hans Kristian Rosbach [Wed, 3 Jan 2024 14:04:09 +0000 (15:04 +0100)]
Simplify includes
Nathan Moinvaziri [Sun, 14 Jan 2024 01:58:23 +0000 (17:58 -0800)]
Improve code coverage for SSE2.
We need to turn off support all higher instruction sets in order to hit code
for a lower instruction set.
Nathan Moinvaziri [Sun, 14 Jan 2024 00:24:32 +0000 (16:24 -0800)]
Fixed S390X CMake builds not running in forks.
Nathan Moinvaziri [Sat, 13 Jan 2024 22:26:39 +0000 (14:26 -0800)]
Upload all coverage reports at once after tests.
Nathan Moinvaziri [Thu, 4 Jan 2024 22:18:49 +0000 (14:18 -0800)]
Remove unneeded pointer for functable.longest_match in deflate_slow
Hans Kristian Rosbach [Sun, 7 Jan 2024 18:29:13 +0000 (19:29 +0100)]
2.1.6 Release
Mika Lindqvist [Tue, 9 Jan 2024 10:02:45 +0000 (12:02 +0200)]
Fix building tests with cmake 3.10 and older.
Hans Kristian Rosbach [Mon, 8 Jan 2024 20:34:19 +0000 (21:34 +0100)]
Add FAR macro to zlib-compat headers to improve compatibility.
Nathan Moinvaziri [Thu, 4 Jan 2024 22:20:19 +0000 (14:20 -0800)]
Added CI instance for WITH_NATIVE_INSTRUCTIONS.
Nathan Moinvaziri [Thu, 4 Jan 2024 17:06:03 +0000 (09:06 -0800)]
Remove tab-in-indent rule from lint workflow
Makefiles require using tabs as indents. So we need to remove this rule.
Nathan Moinvaziri [Fri, 29 Dec 2023 00:55:44 +0000 (16:55 -0800)]
Cancel previously running CI jobs for PR or branch.
Rye Mutt [Thu, 28 Dec 2023 02:38:00 +0000 (21:38 -0500)]
Nathan Moinvaziri [Wed, 27 Dec 2023 21:41:34 +0000 (13:41 -0800)]
Fixed tab character in ARM ACLE uqsub16 assembly.
Nathan Moinvaziri [Tue, 26 Dec 2023 21:33:45 +0000 (13:33 -0800)]
Fix trailing whitespace in minideflate.c.
Nathan Moinvaziri [Tue, 26 Dec 2023 21:33:45 +0000 (13:33 -0800)]
Add linter workflow for whitespace errors. zlib-ng/zlib-ng#1190
Hans Kristian Rosbach [Thu, 21 Dec 2023 00:11:40 +0000 (01:11 +0100)]
Don't attempt ARMv6 detection on AARCH64.