]>
git.ipfire.org Git - thirdparty/zlib-ng.git/log
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.
Hans Kristian Rosbach [Sat, 23 Dec 2023 19:12:13 +0000 (20:12 +0100)]
Don't incorrectly disable GoogleTest because of old CMake version.
Hans Kristian Rosbach [Sat, 23 Dec 2023 19:08:17 +0000 (20:08 +0100)]
Add status output when running git checkout of GoogleTest
Hans Kristian Rosbach [Sat, 23 Dec 2023 19:00:48 +0000 (20:00 +0100)]
Update to GoogleTest 1.12.1.
This requires minimum CMake 3.5 and C++11, this matches nicely with zlib-ng 2.1.x requirements.
Vladislav Shchapov [Thu, 21 Dec 2023 16:19:34 +0000 (21:19 +0500)]
Remove unused Z_TLS and HAVE_THREAD_LOCAL
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Thu, 21 Dec 2023 16:19:05 +0000 (21:19 +0500)]
Atomic functable
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Mika Lindqvist [Fri, 22 Dec 2023 11:24:54 +0000 (13:24 +0200)]
Make sure uqsub16 mnemonic doesn't get optimized away.
Mika Lindqvist [Fri, 22 Dec 2023 14:59:03 +0000 (16:59 +0200)]
Add support for __attribute__((__target__(...))) to overcome limitations of -march=native.
Hans Kristian Rosbach [Sat, 23 Dec 2023 18:00:46 +0000 (19:00 +0100)]
Always run CMake tests without LTO.
Mika Lindqvist [Thu, 21 Dec 2023 08:19:54 +0000 (10:19 +0200)]
Check if compiler supports -march=native or -mcpu=native.
Cameron Cawley [Wed, 11 Jan 2023 14:52:15 +0000 (14:52 +0000)]
Improve performance of crc32_acle on 32-bit ARM
Vladislav Shchapov [Sun, 17 Dec 2023 12:14:17 +0000 (17:14 +0500)]
Initialize functable earlier, during inflateInit
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sat, 16 Dec 2023 13:00:45 +0000 (18:00 +0500)]
Add force initialization functable, because deflate captures function pointers from functable
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sat, 16 Dec 2023 09:10:11 +0000 (14:10 +0500)]
Fix buffer overflow in compare256_rle benchmark
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Letu Ren [Sun, 17 Dec 2023 16:58:38 +0000 (00:58 +0800)]
Only read version information from zlib.h.in
This is a patch for https://github.com/zlib-ng/zlib-ng/commit/
cd458c79c7923e76ffdd0e2638bf2a0eed4f3996
As the commit message says: "Add code to extract version information
for both ZLIB and ZLIBNG variants from the zlib.h file."
The logic of ${SUFFIX} is that zlib-ng reads version information after
parse ZLIB_COMPAT before the commit mentioned above. ${SUFFIX} will only
be set by ZLIB_COMPAT and is meaningless before ZLIB_COMPAT.
Letu Ren [Mon, 18 Dec 2023 13:53:21 +0000 (21:53 +0800)]
Update copyright to sync with zlib 1.3
https://github.com/zlib-ng/zlib-ng/pull/1563 this patch forgets to
update copyright string.
Letu Ren [Thu, 14 Dec 2023 07:27:08 +0000 (15:27 +0800)]
Remove duplicate enable tests option
There are two identical ZLIB_ENABLE_TESTS option in CMakeLists.txt which
means the latter one is meaningless. This issue is introduced in
https://github.com/zlib-ng/zlib-ng/commit/
ce1a64b5147b874a2dd32920765be333f54e7095
which adds the option to top but forgets to remove the original one.
Mika Lindqvist [Fri, 15 Dec 2023 13:23:52 +0000 (14:23 +0100)]
Fix pkgcheck mismatch with configure due to cmake target files.
Uilian Ries [Fri, 15 Dec 2023 13:25:30 +0000 (14:25 +0100)]
Export cmake target (#1601)
* Export cmake target
* Mimic zlib target name
---------
Signed-off-by: Uilian Ries <uilianries@gmail.com>
Adam Stylinski [Tue, 7 Nov 2023 20:22:55 +0000 (15:22 -0500)]
Detemplatize adler32_fold_copy for avx512
Measurements show deltas basically in the noise floor for the
benchmarks.
The AVX512 VNNI implementation is a bit special in that it seems to be
be hurt by the clock penalty enough versus a normal copy that a 256 bit
wide variant was warranted.
Adam Stylinski [Tue, 7 Nov 2023 19:54:18 +0000 (14:54 -0500)]
Simplify AVX2 adler32_fold_copy by removing templates
Vladislav Shchapov [Sun, 26 Nov 2023 19:13:49 +0000 (00:13 +0500)]
Prevent tests writing into the source directory.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Vladislav Shchapov [Sun, 26 Nov 2023 17:48:31 +0000 (22:48 +0500)]
Run OSB tests with readonly source directory.
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
Simon Hosie [Mon, 6 Nov 2023 23:39:34 +0000 (15:39 -0800)]
Add adler32_fold_copy_rvv implementation.
Yoshiki Matsuda [Mon, 23 Oct 2023 09:33:16 +0000 (18:33 +0900)]
Fix clang-cl warnings
Hans Kristian Rosbach [Sun, 26 Nov 2023 19:56:58 +0000 (20:56 +0100)]
2.1.5 Release
Adam Stylinski [Fri, 17 Nov 2023 23:26:45 +0000 (18:26 -0500)]
Fix an issue with regard to finishing out the window
if inflate is invoked with Z_FINISH, and it deems a window was not
necessary, there's a corner case where we never checksum the bytes.
Detect this by checking the window size against zero and the value
of the flush parameter.
This should fix issue #1600, and possibly #1565 as well.
Nathan Moinvaziri [Wed, 22 Nov 2023 06:30:45 +0000 (22:30 -0800)]
Added unit test for inflate with Z_FINISH and no window.
This test decompresses a small git pack object with the text:
"alone in the dark". By providing inflate with Z_FINISH, it should not use a
sliding window according to zlib docs. We purposefully limit the read buffer
size to trigger CHECK mode to bail early.
Mika T. Lindqvist [Tue, 7 Nov 2023 17:06:21 +0000 (19:06 +0200)]
[configure] Propagate -DWITH_GZFILEOP to pkgconfig.
Leander Schulten [Fri, 3 Nov 2023 22:31:11 +0000 (23:31 +0100)]
pkgconfig file: propagate WITH_GZFILEOP
Benjamin Buch [Mon, 30 Oct 2023 18:18:30 +0000 (19:18 +0100)]
fix cmake header path in install with custom CMAKE_INSTALL_INCLUDEDIR
Mika Lindqvist [Mon, 30 Oct 2023 19:49:18 +0000 (21:49 +0200)]
[README] configure no longer supports --native
Hans Kristian Rosbach [Fri, 20 Oct 2023 20:31:43 +0000 (22:31 +0200)]
Fix status badges
Hans Kristian Rosbach [Fri, 20 Oct 2023 20:30:32 +0000 (22:30 +0200)]
Update to actions/checkout@v4, and disable checkout progress logging.
Hans Kristian Rosbach [Fri, 13 Oct 2023 10:57:37 +0000 (12:57 +0200)]
2.1.4 Release
Mika Lindqvist [Sun, 15 Oct 2023 19:10:46 +0000 (22:10 +0300)]
Fix building benchmarks on 32-bit PowerPC.
Mika T. Lindqvist [Mon, 16 Oct 2023 20:46:26 +0000 (23:46 +0300)]
Fix cross-compiling benchmarks and libpng.
Xeonacid [Sun, 8 Oct 2023 03:30:54 +0000 (11:30 +0800)]
Support RVV hwcap detect at runtime
Fallback to compile-time detect if kernel version lower than 6.5.
Co-authored-by: Hans Kristian Rosbach <hk-git@circlestorm.org>
Signed-off-by: Xeonacid <h.dwwwwww@gmail.com>
Hans Kristian Rosbach [Mon, 25 Sep 2023 13:23:41 +0000 (15:23 +0200)]
Make sure inflateCopy() allocates window with the necessary buffer for chunked operations.
Based on Chromium bugfix https://chromium-review.googlesource.com/c/chromium/src/+/
4876445
Hans Kristian Rosbach [Thu, 21 Sep 2023 10:45:13 +0000 (12:45 +0200)]
Deprecate ZLIBNG_VER_STATUS, add new variant ZLIBNG_VER_STATUSH