]> git.ipfire.org Git - thirdparty/zlib-ng.git/log
thirdparty/zlib-ng.git
5 years agoFixed missing compare258 object compilation in Win32 ARM makefiles.
Nathan Moinvaziri [Sun, 24 May 2020 16:02:26 +0000 (09:02 -0700)] 
Fixed missing compare258 object compilation in Win32 ARM makefiles.

5 years agoDon't explicitly enable neon flag on MSVC ARM64 builds.
Nathan Moinvaziri [Sat, 2 May 2020 18:06:03 +0000 (11:06 -0700)] 
Don't explicitly enable neon flag on MSVC ARM64 builds.

5 years agoRemoved old references to fill_window in NMake ARM makefiles.
Nathan Moinvaziri [Sat, 2 May 2020 17:14:36 +0000 (10:14 -0700)] 
Removed old references to fill_window in NMake ARM makefiles.

5 years agoAdded CI configurations for MSVC ARM and ARM64.
Nathan Moinvaziri [Thu, 30 Apr 2020 01:02:55 +0000 (18:02 -0700)] 
Added CI configurations for MSVC ARM and ARM64.

5 years agoEnable NEON-optimized slide_hash on aarch64 if NEON-optimizations are enabled.
Mika Lindqvist [Sun, 21 Jun 2020 14:00:04 +0000 (17:00 +0300)] 
Enable NEON-optimized slide_hash on aarch64 if NEON-optimizations are enabled.

5 years agoFixed casting warnings
Pavel P [Sat, 25 Apr 2020 11:24:12 +0000 (17:24 +0600)] 
Fixed casting warnings

5 years agoAdd cmake build dir to gitignore
Pavel P [Sat, 25 Apr 2020 11:33:06 +0000 (17:33 +0600)] 
Add cmake build dir to gitignore

+ ignore build.* or build-* top level dirs

5 years agoDo not use word xor (iso646 legacy)
Nathan Moinvaziri [Fri, 19 Jun 2020 04:12:32 +0000 (21:12 -0700)] 
Do not use word xor (iso646 legacy)

Co-authored-by: pps83 <pps83@users.noreply.github.com>
5 years agotest/pkgcheck.sh: verify cmake and configure install identical bits (excluding .a...
Dan Kegel [Thu, 18 Jun 2020 21:24:14 +0000 (14:24 -0700)] 
test/pkgcheck.sh: verify cmake and configure install identical bits (excluding .a and .so for now)

Also add workflow to run pkgcheck.sh on one system.

5 years agocmake: generate same zconf.h as configure
Dan Kegel [Thu, 11 Jun 2020 01:41:32 +0000 (18:41 -0700)] 
cmake: generate same zconf.h as configure

Also make comment in zconf.h less configure-specific

5 years agocmake: generate same .pc file contents as configure
Dan Kegel [Wed, 10 Jun 2020 23:35:44 +0000 (16:35 -0700)] 
cmake: generate same .pc file contents as configure

5 years agocmake: install .pc file to same location as configure
Dan Kegel [Wed, 10 Jun 2020 22:52:31 +0000 (15:52 -0700)] 
cmake: install .pc file to same location as configure

5 years agodeflate_slow: Suppress a static analysis warning triggered by recent refactoring...
Dan Kegel [Sat, 13 Jun 2020 23:33:59 +0000 (16:33 -0700)] 
deflate_slow: Suppress a static analysis warning triggered by recent refactoring c459b4f5.

5 years agoMove check to start block out of main loop for performance reasons.
Nathan Moinvaziri [Tue, 16 Jun 2020 20:35:27 +0000 (13:35 -0700)] 
Move check to start block out of main loop for performance reasons.

5 years agoFixed deflate_quick to not emit a block when there is no available input. Pigz requir...
Nathan Moinvaziri [Fri, 29 May 2020 15:25:43 +0000 (08:25 -0700)] 
Fixed deflate_quick to not emit a block when there is no available input. Pigz requires no blocks to be emitted in certain instances when calling deflate with Z_BLOCK.
Fixed end block not being emitted between calls to deflate_quick causing invalid stored block lengths in certain instances.

5 years agoUpdated features with new Adler32 implementations.
Nathan Moinvaziri [Sat, 13 Jun 2020 03:58:35 +0000 (20:58 -0700)] 
Updated features with new Adler32 implementations.

5 years agoRemove unnecessary adler32_neon.h.
Nathan Moinvaziri [Sat, 13 Jun 2020 03:28:58 +0000 (20:28 -0700)] 
Remove unnecessary adler32_neon.h.

5 years agoAdded regression test for deflateEnd returning -3 when using deflate quick. #382
Nathan Moinvaziri [Sat, 26 Oct 2019 20:03:25 +0000 (13:03 -0700)] 
Added regression test for deflateEnd returning -3 when using deflate quick. #382

5 years agoMakefile: fail minigzip test if minigzip aborts
Dan Kegel [Wed, 10 Jun 2020 15:41:07 +0000 (08:41 -0700)] 
Makefile: fail minigzip test if minigzip aborts

Pipeline exit status ignores all but the last
process in the pipeline, so break up the pipeline
so we can see minigzip's exit status.

Also fix ancient quoting bug; intention was likely to use
shell $$ variable to uniquify temp file name.

5 years agominigzip.c: bring back default bahavior, use distinguishable error code on bad cmdline
Dan Kegel [Wed, 10 Jun 2020 15:40:34 +0000 (08:40 -0700)] 
minigzip.c: bring back default bahavior, use distinguishable error code on bad cmdline

Fixes #635

5 years agoRemove Borland C++ compiler references
Don [Tue, 9 Jun 2020 16:57:05 +0000 (09:57 -0700)] 
Remove Borland C++ compiler references

There are a few guards checking for Borland C++ 5.0 or greater which was released
in 1996. While there is still a descendent of this compiler in Embarcadero C++ Builder
its value for __BORLANDC__ is greater than 0x500 so it is safe to remove these guards.

5 years agoinfcover.c: assert that we avoid zero-length allocations; fixes #593
Dan Kegel [Sat, 13 Jun 2020 19:17:46 +0000 (19:17 +0000)] 
infcover.c: assert that we avoid zero-length allocations; fixes #593

5 years agoUse standard int types in zlib-ng api.
Nathan Moinvaziri [Sat, 23 May 2020 14:01:35 +0000 (07:01 -0700)] 
Use standard int types in zlib-ng api.

5 years agoFixed variable set but not used static analysis warning in example.
Nathan Moinvaziri [Tue, 9 Jun 2020 04:12:58 +0000 (21:12 -0700)] 
Fixed variable set but not used static analysis warning in example.

  example.c:84:14: warning: variable ‘read’ set but not used [-Wunused-but-set-variable]
     int err, read;
  example.c:198:5: warning: Value stored to 'read' is never read [deadcode.DeadStores]
    read = PREFIX(gzfread)(uncompr, uncomprLen, 1, file);

5 years agoFixed clang static analysis warning value stored is never read in infcover.
Nathan Moinvaziri [Tue, 9 Jun 2020 04:08:52 +0000 (21:08 -0700)] 
Fixed clang static analysis warning value stored is never read in infcover.

  infcover.c:466:5: warning: Value stored to 'buf' is never read [deadcode.DeadStores]
    buf += len;

5 years agoDisable unaligned access of > 4 bytes on 32-bit arm
NiLuJe [Thu, 4 Jun 2020 22:48:06 +0000 (00:48 +0200)] 
Disable unaligned access of > 4 bytes on 32-bit arm

5 years agoFixed defined WIN32 in switchlevels should be _WIN32.
Nathan Moinvaziri [Tue, 9 Jun 2020 01:56:25 +0000 (18:56 -0700)] 
Fixed defined WIN32 in switchlevels should be _WIN32.

5 years agoFixed deflate_quick algorithm not being used due to old check.
Nathan Moinvaziri [Tue, 9 Jun 2020 01:59:29 +0000 (18:59 -0700)] 
Fixed deflate_quick algorithm not being used due to old check.

5 years agoAdded new lines in Alder32 AVX2 and SSSE3 to improve readability.
Nathan Moinvaziri [Mon, 25 May 2020 13:32:55 +0000 (06:32 -0700)] 
Added new lines in Alder32 AVX2 and SSSE3 to improve readability.

5 years agoZero entire s1 and s2 for possibly better performance.
Nathan Moinvaziri [Mon, 25 May 2020 13:28:38 +0000 (06:28 -0700)] 
Zero entire s1 and s2 for possibly better performance.

5 years agoAdd UNLIKELY to first 3 branches in adler32 variants.
Nathan Moinvaziri [Sat, 23 May 2020 13:14:54 +0000 (06:14 -0700)] 
Add UNLIKELY to first 3 branches in adler32 variants.

5 years agoAdded Adler32 SSSE3 and AVX2 implementations to functable.
Nathan Moinvaziri [Sat, 23 May 2020 04:35:26 +0000 (21:35 -0700)] 
Added Adler32 SSSE3 and AVX2 implementations to functable.

Co-authored-by: Brian Bockelman <bockelman@gmail.com>
Co-authored-by: Mika T. Lindqvist <postmaster@raasu.org>
5 years agoRemove unnecessary commented-out printf statements.
Brian Bockelman [Thu, 17 Nov 2016 03:35:30 +0000 (21:35 -0600)] 
Remove unnecessary commented-out printf statements.

(cherry picked from commit e0284cc3ef470c433bc0831d71fba038c3251944)

5 years agoRewrite adler32 to have a SSE and AVX variant.
Brian Bockelman [Thu, 17 Nov 2016 03:32:48 +0000 (21:32 -0600)] 
Rewrite adler32 to have a SSE and AVX variant.

On a 2.3GHz Haswell, I get the following timings when doing
an adler32 call against 1907MB of data:

Adler32 base time: 970682 usec
Adler32 vectorized time: 403403 usec
Adler32 AVX time: 264453 usec

(cherry picked from commit 905c306d54ec37a9efd56b6561ce4ab843be3a1c)

5 years agoMove Tracev flush statement into flush_pending.
Nathan Moinvaziri [Tue, 2 Jun 2020 16:24:50 +0000 (09:24 -0700)] 
Move Tracev flush statement into flush_pending.

5 years agoMove Tracevv statements when emitting literal to zng_tr_tally_lit.
Nathan Moinvaziri [Tue, 2 Jun 2020 16:23:47 +0000 (09:23 -0700)] 
Move Tracevv statements when emitting literal to zng_tr_tally_lit.

5 years agoMove check for match length in deflate_quick to check_match.
Nathan Moinvaziri [Tue, 2 Jun 2020 16:17:56 +0000 (09:17 -0700)] 
Move check for match length in deflate_quick to check_match.

5 years agoFixed whitespace formatting in bi_flush.
Nathan Moinvaziri [Tue, 2 Jun 2020 16:26:13 +0000 (09:26 -0700)] 
Fixed whitespace formatting in bi_flush.

5 years agoRemoved example64 and minigzip64 since large file support is now natively supported.
Nathan Moinvaziri [Fri, 29 May 2020 01:52:39 +0000 (18:52 -0700)] 
Removed example64 and minigzip64 since large file support is now natively supported.

5 years agoFor gzseek, gzoffset, gzopen, adler32_combine, crc32_combine and crc32_combine_gen...
Nathan Moinvaziri [Thu, 28 May 2020 01:16:50 +0000 (18:16 -0700)] 
For gzseek, gzoffset, gzopen, adler32_combine, crc32_combine and crc32_combine_gen, export 32-bit and 64-bit versions for zlib-compatible api and only 64-bit version (without 64 suffix) for zlib-ng native api.

5 years agoFixed wrong 64-bit casting in deflatePrime potentially causing bits to be lost.
Nathan Moinvaziri [Sat, 30 May 2020 17:50:38 +0000 (10:50 -0700)] 
Fixed wrong 64-bit casting in deflatePrime potentially causing bits to be lost.

    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).
    Arithmetic overflow: 32-bit value is shifted, then cast to 64-bit value.
       Results might not be an expected value.

5 years agoCast distance code to uint64_t before shifting in zng_emit_dist.
Nathan Moinvaziri [Tue, 2 Jun 2020 16:02:07 +0000 (09:02 -0700)] 
Cast distance code to uint64_t before shifting in zng_emit_dist.

5 years agoFixed arithmetic overflow when emitting deflate header bits.
Nathan Moinvaziri [Mon, 1 Jun 2020 04:46:03 +0000 (21:46 -0700)] 
Fixed arithmetic overflow when emitting deflate header bits.

    Arithmetic overflow: 32-bit value is shifted, then cast to 64-bit value.
      Results might not be an expected value.

5 years agoClean up windows defines, use _WIN32
Pavel P [Mon, 20 Apr 2020 10:19:30 +0000 (16:19 +0600)] 
Clean up windows defines, use _WIN32

 + replaced WIN32 with _WIN32
 + removed unused WINDOWS/_WINDOWS defines
 + no need to test for __MINGW__, as _WIN32 is also defined

5 years agoFix specification of warnings for intel compilers
Gabriel A. Devenyi [Fri, 29 May 2020 17:11:32 +0000 (13:11 -0400)] 
Fix specification of warnings for intel compilers

5 years agoMake deflate_quick algorithm available to all architectures. #205
Nathan Moinvaziri [Sun, 24 May 2020 15:42:38 +0000 (08:42 -0700)] 
Make deflate_quick algorithm available to all architectures. #205

5 years agoAdded GitHub Actions workflow to test against libpng.
Nathan Moinvaziri [Sat, 6 Jun 2020 16:44:58 +0000 (09:44 -0700)] 
Added GitHub Actions workflow to test against libpng.

5 years agoAdd a workflow for clang and gcc static analysis
Gabriel A. Devenyi [Mon, 25 May 2020 03:53:57 +0000 (23:53 -0400)] 
Add a workflow for clang and gcc static analysis

5 years agoRun compression level tests without open mode.
Nathan Moinvaziri [Fri, 29 May 2020 20:58:11 +0000 (13:58 -0700)] 
Run compression level tests without open mode.
Remove duplicate minigzip cmake tests.

5 years agoAdded help message to switchlevels.
Nathan Moinvaziri [Thu, 4 Jun 2020 17:58:37 +0000 (10:58 -0700)] 
Added help message to switchlevels.

5 years agoAdded help message to minigzip.
Nathan Moinvaziri [Thu, 4 Jun 2020 17:58:26 +0000 (10:58 -0700)] 
Added help message to minigzip.

5 years agoAdd optimized slide_hash for POWER processors
Matheus Castanho [Wed, 27 May 2020 13:06:09 +0000 (10:06 -0300)] 
Add optimized slide_hash for POWER processors

This commit introduces a new slide_hash function that
uses VSX vector instructions to slide 8 hash elements at a time,
instead of just one as the standard code does.

5 years agoPreparation for POWER optimizations
Matheus Castanho [Mon, 25 May 2020 21:10:29 +0000 (18:10 -0300)] 
Preparation for POWER optimizations

Add the scaffolding for future optimizations for POWER processors. Now
the build is capable of correctly detecting multiple processor
sub-architectures (ppc, ppc64 and ppc64le) and also if features
needed for the optimizations are available during build and runtime.

With these changes, adding a new optimized function for POWER should be
as simple as adding a new file under arch/power/, appending build
instructions to the build files and editing functable.c accordingly.

The UNALIGNED_OK flag is now also added by default for powerpc64le
targets.

5 years agoUse char* instead of caddr_t.
Mika Lindqvist [Thu, 4 Jun 2020 12:45:05 +0000 (15:45 +0300)] 
Use char* instead of caddr_t.

5 years agoFixed multi-line assembly macro in UPDATE_HASH for MSVC when using ClangCl.
Nathan Moinvaziri [Sun, 31 May 2020 16:51:28 +0000 (09:51 -0700)] 
Fixed multi-line assembly macro in UPDATE_HASH for MSVC when using ClangCl.
https://docs.microsoft.com/en-us/cpp/assembler/inline/defining-asm-blocks-as-c-macros

    insert_string_tpl.h(44,5): error : cannot use more than one symbol in memory operand
    insert_string_sse.c(28,13): message : expanded from macro 'UPDATE_HASH'

5 years agoRemove toofar checks now that we always hash 4 bytes, and the minimum
Hans Kristian Rosbach [Mon, 25 May 2020 15:17:45 +0000 (17:17 +0200)] 
Remove toofar checks now that we always hash 4 bytes, and the minimum
match length is thus also 4. (MIN_MATCH is still 3 for other reasons)

5 years agoRemove IPos typedef which also helps to reduce casting warnings.
Nathan Moinvaziri [Wed, 27 May 2020 00:04:59 +0000 (17:04 -0700)] 
Remove IPos typedef which also helps to reduce casting warnings.

5 years agoAdd friendly name to checkout action in GitHub Actions workflows.
Nathan Moinvaziri [Fri, 29 May 2020 18:20:08 +0000 (11:20 -0700)] 
Add friendly name to checkout action in GitHub Actions workflows.

5 years agoRemove verbose out from pip and choco during cmake workflow.
Nathan Moinvaziri [Fri, 29 May 2020 16:42:34 +0000 (09:42 -0700)] 
Remove verbose out from pip and choco during cmake workflow.

5 years agoFixed casting warnings in trees.c with count being int and freq being uint16_t.
Nathan Moinvaziri [Wed, 27 May 2020 00:21:13 +0000 (17:21 -0700)] 
Fixed casting warnings in trees.c with count being int and freq being uint16_t.
Changed to use uint16_t for all counting variable types.

  trees.c(431,45): warning C4244: '+=': conversion from 'int' to 'uint16_t', possible loss of data
  trees.c(431,45): warning C4244: '+=': conversion from 'int' to 'uint16_t', possible loss of data

5 years agoFixed casting warnings in calls to put_short and put_short_msb.
Nathan Moinvaziri [Wed, 27 May 2020 00:19:17 +0000 (17:19 -0700)] 
Fixed casting warnings in calls to put_short and put_short_msb.

  deflate.c(845,32): warning C4244: 'function': conversion from 'unsigned int' to 'uint16_t', possible loss of data
  deflate.c(894,50): warning C4244: 'function': conversion from 'unsigned int' to 'uint16_t', possible loss of data

5 years agoReuse wsize variable in slide_hash_avx2.
Nathan Moinvaziri [Wed, 27 May 2020 00:14:37 +0000 (17:14 -0700)] 
Reuse wsize variable in slide_hash_avx2.

5 years agoFixed casting warnings about copying len into pending buf, replaced with calls to...
Nathan Moinvaziri [Wed, 27 May 2020 00:10:17 +0000 (17:10 -0700)] 
Fixed casting warnings about copying len into pending buf, replaced with calls to put_short.

  deflate.c(1413,45): warning C4244: '=': conversion from 'unsigned int' to 'unsigned char', possible loss of data
  deflate.c(1414,50): warning C4244: '=': conversion from 'unsigned int' to 'unsigned char', possible loss of data
  deflate.c(1415,46): warning C4244: '=': conversion from 'unsigned int' to 'unsigned char', possible loss of data
  deflate.c(1416,51): warning C4244: '=': conversion from 'unsigned int' to 'unsigned char', possible loss of data

5 years agoFixed dist casting warnings in zng_tr_tally_dist.
Nathan Moinvaziri [Mon, 25 May 2020 22:26:37 +0000 (15:26 -0700)] 
Fixed dist casting warnings in zng_tr_tally_dist.

    deflate_p.h(42,37): warning C4244: '=': conversion from 'unsigned int' to 'unsigned char', possible loss of data
    deflate_p.h(43,42): warning C4244: '=': conversion from 'unsigned int' to 'unsigned char', possible loss of data

5 years agoRename github actions fuzz workflow to be consistent with the rest of the workflows.
Nathan Moinvaziri [Mon, 25 May 2020 04:32:30 +0000 (21:32 -0700)] 
Rename github actions fuzz workflow to be consistent with the rest of the workflows.

5 years agoFixed warning about bi_flush being defined but not used. #592
Nathan Moinvaziri [Mon, 25 May 2020 04:30:52 +0000 (21:30 -0700)] 
Fixed warning about bi_flush being defined but not used. #592

    trees_emit.h:75:13: warning: ‘bi_flush’ defined but not used

5 years agoSeparate makefile object list on each line for less merge conflicts in the future.
Nathan Moinvaziri [Sun, 24 May 2020 16:16:42 +0000 (09:16 -0700)] 
Separate makefile object list on each line for less merge conflicts in the future.

5 years agoFixed intrinsics spelling typo in CMake comments.
Nathan Moinvaziri [Sat, 23 May 2020 14:42:05 +0000 (07:42 -0700)] 
Fixed intrinsics spelling typo in CMake comments.

5 years agoFixed signedness warning in calls to __cpuid and cpuidex.
Nathan Moinvaziri [Sat, 23 May 2020 14:32:41 +0000 (07:32 -0700)] 
Fixed signedness warning in calls to __cpuid and cpuidex.

x86.c(29,22): warning C4057: 'function': 'int *' differs in indirection to slightly different base types from 'unsigned int [4]'
x86.c(43,24): warning C4057: 'function': 'int *' differs in indirection to slightly different base types from 'unsigned int [4]'

5 years agoRemove duplicate zlib license from source comments.
Nathan Moinvaziri [Wed, 20 May 2020 17:35:50 +0000 (10:35 -0700)] 
Remove duplicate zlib license from source comments.

5 years agoFixed unused variable compiler warning in checksum_fuzzer.
Nathan Moinvaziri [Tue, 19 May 2020 22:35:33 +0000 (15:35 -0700)] 
Fixed unused variable compiler warning in checksum_fuzzer.

checksum_fuzzer.c:23:14: warning: variable ‘combine1’ set but not used [-Wunused-but-set-variable]
     uint32_t combine1, combine2;

5 years agoMove contents tables to INDEX.md.
Nathan Moinvaziri [Tue, 19 May 2020 21:56:00 +0000 (14:56 -0700)] 
Move contents tables to INDEX.md.

5 years agoAdded GitHub Actions CI NMake badge to README.md.
Nathan Moinvaziri [Mon, 18 May 2020 15:13:34 +0000 (08:13 -0700)] 
Added GitHub Actions CI NMake badge to README.md.

5 years agoFixed const correctness when assigning stream next_in.
Nathan Moinvaziri [Mon, 18 May 2020 15:08:34 +0000 (08:08 -0700)] 
Fixed const correctness when assigning stream next_in.

5 years agoFixed no tab formatting in CVE-2003-0107.c.
Nathan Moinvaziri [Tue, 12 May 2020 14:42:49 +0000 (10:42 -0400)] 
Fixed no tab formatting in CVE-2003-0107.c.

5 years agoFixed casting warning from bi_reverse in maketrees.
Nathan Moinvaziri [Tue, 12 May 2020 13:27:03 +0000 (09:27 -0400)] 
Fixed casting warning from bi_reverse in maketrees.

maketrees.c(93,58): warning C4244: '=': conversion from 'unsigned int' to 'uint16_
t', possible loss of data

5 years agoGroup check_include_file together in CMakeLists.txt.
Nathan Moinvaziri [Tue, 12 May 2020 13:24:01 +0000 (09:24 -0400)] 
Group check_include_file together in CMakeLists.txt.

5 years agoFixed whitespace and tabbing in cmake files.
Nathan Moinvaziri [Tue, 12 May 2020 13:21:38 +0000 (09:21 -0400)] 
Fixed whitespace and tabbing in cmake files.

5 years agoChange quick_insert_string memory access to be similar to insert_string.
Nathan Moinvaziri [Sun, 10 May 2020 03:41:18 +0000 (23:41 -0400)] 
Change quick_insert_string memory access to be similar to insert_string.

5 years agoRemove extra lines between functions and their comments.
Nathan Moinvaziri [Sun, 10 May 2020 03:37:31 +0000 (23:37 -0400)] 
Remove extra lines between functions and their comments.

5 years agoFixed casting warnings and non-standard initializer warning in example project.
Nathan Moinvaziri [Sun, 10 May 2020 03:51:50 +0000 (23:51 -0400)] 
Fixed casting warnings and non-standard initializer warning in example project.

5 years agoFixed target not being linked properly to zlib system libraries.
Nathan Moinvaziri [Wed, 27 May 2020 16:21:16 +0000 (09:21 -0700)] 
Fixed target not being linked properly to zlib system libraries.

5 years agoFixed wrong cmake variable used in zlib dual link ci instance.
Nathan Moinvaziri [Wed, 27 May 2020 16:04:19 +0000 (09:04 -0700)] 
Fixed wrong cmake variable used in zlib dual link ci instance.

5 years agoAdded ability to set window bits for switchlevels.
Nathan Moinvaziri [Fri, 29 May 2020 16:15:20 +0000 (09:15 -0700)] 
Added ability to set window bits for switchlevels.
Initialize deflateInit with first level which is necessary for deflate_quick testing where initial window size is set to 8k.

5 years agoUse a constant to load adler-32 initial hash value.
Nathan Moinvaziri [Thu, 28 May 2020 18:15:59 +0000 (11:15 -0700)] 
Use a constant to load adler-32 initial hash value.

5 years agoCache chocolatey packages on Windows for cmake GitHub Actions workflow.
Nathan Moinvaziri [Fri, 29 May 2020 18:16:43 +0000 (11:16 -0700)] 
Cache chocolatey packages on Windows for cmake GitHub Actions workflow.

5 years agoFixed missing window_padding added to window alloc size in deflateCopy.
Nathan Moinvaziri [Mon, 25 May 2020 22:00:54 +0000 (15:00 -0700)] 
Fixed missing window_padding added to window alloc size in deflateCopy.

5 years agoFixed zero length stored block left open when using Z_SYNC_FLUSH. Moved toggling...
Nathan Moinvaziri [Sat, 16 May 2020 22:37:27 +0000 (18:37 -0400)] 
Fixed zero length stored block left open when using Z_SYNC_FLUSH. Moved toggling of block_open back to deflate_quick since zero length stored block doesn't emit end of block code.

5 years agoCheck distance in deflate_quick using MAX_DIST(s).
Nathan Moinvaziri [Thu, 14 May 2020 04:03:38 +0000 (00:03 -0400)] 
Check distance in deflate_quick using MAX_DIST(s).
Added check_match to validate matches when using deflate_quick in debug mode.

5 years agoFixed formatting for readability in switchlevels.
Nathan Moinvaziri [Fri, 15 May 2020 17:25:48 +0000 (13:25 -0400)] 
Fixed formatting for readability in switchlevels.

5 years agoSet binary mode for stdin and stdout in switchlevels.
Nathan Moinvaziri [Fri, 15 May 2020 17:22:49 +0000 (13:22 -0400)] 
Set binary mode for stdin and stdout in switchlevels.

5 years agoRename match_p.h to match_tpl.h since it has been converted to a template header...
Nathan Moinvaziri [Sun, 24 May 2020 17:01:05 +0000 (10:01 -0700)] 
Rename match_p.h to match_tpl.h since it has been converted to a template header file.

5 years agoAdded features list to README.md.
Nathan Moinvaziri [Tue, 19 May 2020 15:40:43 +0000 (08:40 -0700)] 
Added features list to README.md.

5 years agoRemove support for DYNAMIC_CRC_TABLE which was broken.
Nathan Moinvaziri [Thu, 7 May 2020 14:36:32 +0000 (07:36 -0700)] 
Remove support for DYNAMIC_CRC_TABLE which was broken.

5 years agoRename archdetect files to detect-arch to match detect-sanitizer.
Nathan Moinvaziri [Tue, 12 May 2020 02:05:24 +0000 (22:05 -0400)] 
Rename archdetect files to detect-arch to match detect-sanitizer.

5 years agoMove compiler sanitizer checking to separate cmake file.
Nathan Moinvaziri [Mon, 11 May 2020 23:25:01 +0000 (19:25 -0400)] 
Move compiler sanitizer checking to separate cmake file.

5 years agoFixed compiler warning about inline already being defined when including zutil.h...
Nathan Moinvaziri [Sat, 23 May 2020 03:19:02 +0000 (20:19 -0700)] 
Fixed compiler warning about inline already being defined when including zutil.h in C++ app.

5 years agoSimplify generic hash function using knuth's multiplicative hash.
Nathan Moinvaziri [Fri, 1 May 2020 04:05:05 +0000 (21:05 -0700)] 
Simplify generic hash function using knuth's multiplicative hash.

5 years agoUse 64-bit bit buffer when emitting codes.
Nathan Moinvaziri [Wed, 6 May 2020 23:55:05 +0000 (16:55 -0700)] 
Use 64-bit bit buffer when emitting codes.

5 years agoUnroll more in compare258_c for performance improvement.
Nathan Moinvaziri [Sat, 23 May 2020 03:06:21 +0000 (20:06 -0700)] 
Unroll more in compare258_c for performance improvement.
Unify length count variable across all compare256 variants.
Early return without break for possible performance improvements.