]> git.ipfire.org Git - thirdparty/zlib-ng.git/log
thirdparty/zlib-ng.git
10 years agoCheck out of tree building in Travis 21/head
Daniel Axtens [Fri, 8 May 2015 08:45:10 +0000 (18:45 +1000)] 
Check out of tree building in Travis

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoUnbreak things: import the right zconf.h
Daniel Axtens [Fri, 8 May 2015 05:58:09 +0000 (15:58 +1000)] 
Unbreak things: import the right zconf.h

Previously I imported <zconf.h>. This worked on my box because I had a
system-wide zconf.h. It didn't work on Travis. This should fix that.

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoMerge pull request #14 from mtl1979/test1
Hans Kristian Rosbach [Mon, 4 May 2015 17:48:37 +0000 (19:48 +0200)] 
Merge pull request #14 from mtl1979/test1

Add support for building out of source tree.

10 years agoFix building outside source tree 14/head
Mika Lindqvist [Mon, 4 May 2015 17:08:12 +0000 (20:08 +0300)] 
Fix building outside source tree
* SRCDIR points to relevant directory in source tree
* SRCTOP points to root of source tree in sub-Makefiles
* arch Makefiles use INCLUDES, and configure sets that depending on if we are
  building inside source tree or outside.
* distclean cleans all files when building outside source tree

10 years agoMerge pull request #16 from mtl1979/develop
Hans Kristian Rosbach [Mon, 4 May 2015 17:08:23 +0000 (19:08 +0200)] 
Merge pull request #16 from mtl1979/develop

Fix signed/unsigned mismatch in deflate.c

10 years agoFix signed/unsigned mismatch. 16/head
Mika Lindqvist [Mon, 4 May 2015 10:17:44 +0000 (13:17 +0300)] 
Fix signed/unsigned mismatch.

10 years agoMerge pull request #15 from daxtens/cleanups
Hans Kristian Rosbach [Mon, 4 May 2015 16:12:49 +0000 (18:12 +0200)] 
Merge pull request #15 from daxtens/cleanups

Compile with -Wall -Werror

10 years agoCompile with -Wall -Werror 15/head
Daniel Axtens [Mon, 4 May 2015 06:28:32 +0000 (16:28 +1000)] 
Compile with -Wall -Werror

This should help keep code quality up.

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoMerge pull request #11 from mtl1979/develop
Hans Kristian Rosbach [Fri, 1 May 2015 12:42:15 +0000 (14:42 +0200)] 
Merge pull request #11 from mtl1979/develop

Fix parallel make

10 years agoMake parallel building work inside arch directory. 11/head
Mika Lindqvist [Thu, 30 Apr 2015 14:43:25 +0000 (17:43 +0300)] 
Make parallel building work inside arch directory.

10 years agoMerge pull request #12 from mtl1979/cmake
Hans Kristian Rosbach [Fri, 1 May 2015 06:59:06 +0000 (08:59 +0200)] 
Merge pull request #12 from mtl1979/cmake

Update CMakeLists.txt

10 years agoMerge pull request #13 from daxtens/cleanups
Hans Kristian Rosbach [Fri, 1 May 2015 06:57:12 +0000 (08:57 +0200)] 
Merge pull request #13 from daxtens/cleanups

Git and build cleanups

10 years agox86: Clean up compiler warnings in crc_folding.c
Daniel Axtens [Fri, 1 May 2015 06:18:19 +0000 (16:18 +1000)] 
x86: Clean up compiler warnings in crc_folding.c

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoUpdate CMakeLists.txt 12/head
Mika Lindqvist [Thu, 30 Apr 2015 20:03:26 +0000 (23:03 +0300)] 
Update CMakeLists.txt

10 years agoMake feature tests build with -Wall -Werror
Daniel Axtens [Fri, 1 May 2015 06:02:14 +0000 (16:02 +1000)] 
Make feature tests build with -Wall -Werror

The feature tests had a number of unused variables.
Make them appear used by doing a void cast.

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agox86: Do not try X86_QUICK_STRATEGY without HAVE_SSE2_INTRIN
Daniel Axtens [Fri, 1 May 2015 05:56:21 +0000 (15:56 +1000)] 
x86: Do not try X86_QUICK_STRATEGY without HAVE_SSE2_INTRIN

QUICK depends on fill_window_sse, and fails to link without it.
Therefore, disable QUICK_STRATEGY if we lack SSE2 support.

This could easily be worked around by making the QUICK code
fall back to regular fill_window, but it's probably not important:
if you care about speed you probably have SSE2.

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoRemove unneeded and confusing alwaysinline
Daniel Axtens [Fri, 1 May 2015 05:30:05 +0000 (15:30 +1000)] 
Remove unneeded and confusing alwaysinline

alwaysinline expands to __attribute__((always_inline)).

This does not force gcc to inline the function. Instead, it allows gcc to
inline the function when complied without optimisations. (Normally, inline
functions are only inlined when compiled with optimisations.)[0]

alwaysinline was only used for bulk_insert_str, and it seems to be using it
in an attempt to force the function to be inlined. That won't work.
Furthermore, bulk_insert_str wasn't even declared inline, causing warnings.

Remove alwaysinline and replace with inline.
Remove the #defines, as they're no longer used.

[0] https://gcc.gnu.org/onlinedocs/gcc-4.7.2/gcc/Function-Attributes.html

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agox86: Silence uninitalised variable warning
Daniel Axtens [Fri, 1 May 2015 05:22:56 +0000 (15:22 +1000)] 
x86: Silence uninitalised variable warning

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoMake clean/distclean descend into $(ARCHDIR) 13/head
Daniel Axtens [Wed, 29 Apr 2015 03:45:34 +0000 (13:45 +1000)] 
Make clean/distclean descend into $(ARCHDIR)

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoarch: git ignore Makefiles
Daniel Axtens [Wed, 29 Apr 2015 03:49:25 +0000 (13:49 +1000)] 
arch: git ignore Makefiles

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoMerge pull request #10 from mtl1979/develop
Hans Kristian Rosbach [Thu, 30 Apr 2015 06:56:25 +0000 (08:56 +0200)] 
Merge pull request #10 from mtl1979/develop

Fix compiling under Visual Studio

10 years agoFix forced inlining to work with Visual Studio. 10/head
Mika Lindqvist [Wed, 29 Apr 2015 16:09:26 +0000 (19:09 +0300)] 
Fix forced inlining to work with Visual Studio.

10 years ago* Remove assembler targets and OBJA from Visual Studio makefile
Mika Lindqvist [Wed, 29 Apr 2015 13:49:43 +0000 (16:49 +0300)] 
* Remove assembler targets and OBJA from Visual Studio makefile
* Fix creating manifest files in Visual Studio makefile
* Add missing dependency information for match.obj in Visual Studio
  makefile

10 years agoFix compiling under Visual Studio.
Mika Lindqvist [Wed, 29 Apr 2015 00:30:54 +0000 (03:30 +0300)] 
Fix compiling under Visual Studio.

10 years agoCleanup: Replace 'z_streamp' with 'z_stream *'
Hans Kristian Rosbach [Sun, 26 Apr 2015 19:31:49 +0000 (21:31 +0200)] 
Cleanup: Replace 'z_streamp' with 'z_stream *'

10 years agoCleanup: Replace 'voidpf' with 'void *'
Hans Kristian Rosbach [Sun, 26 Apr 2015 19:10:12 +0000 (21:10 +0200)] 
Cleanup: Replace 'voidpf' with 'void *'

10 years agoCleanup: Replace 'voidp' with 'void *'
Hans Kristian Rosbach [Sun, 26 Apr 2015 19:06:49 +0000 (21:06 +0200)] 
Cleanup: Replace 'voidp' with 'void *'

10 years agoCleanup: Replace 'voidpc' with 'void const *'
Hans Kristian Rosbach [Sun, 26 Apr 2015 18:37:30 +0000 (20:37 +0200)] 
Cleanup: Replace 'voidpc' with 'void const *'

10 years agoFix previous patches mistakes
Hans Kristian Rosbach [Sun, 26 Apr 2015 17:45:05 +0000 (19:45 +0200)] 
Fix previous patches mistakes

10 years agoFix syntax error in zutil.h
Hans Kristian Rosbach [Sun, 26 Apr 2015 17:34:27 +0000 (19:34 +0200)] 
Fix syntax error in zutil.h

10 years agoMerge pull request #6 from daxtens/travis
Hans Kristian Rosbach [Sun, 26 Apr 2015 16:36:46 +0000 (18:36 +0200)] 
Merge pull request #6 from daxtens/travis

Run tests on Travis CI with .travis.yml

10 years agoRun tests on Travis CI with .travis.yml 6/head
Daniel Axtens [Sun, 26 Apr 2015 15:18:21 +0000 (01:18 +1000)] 
Run tests on Travis CI with .travis.yml

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoUse memcpy, memcmp and memzero directly
Hans Kristian Rosbach [Sun, 26 Apr 2015 11:57:22 +0000 (13:57 +0200)] 
Use memcpy, memcmp and memzero directly

10 years agoDrop workarounds for WinCE and Interix
Hans Kristian Rosbach [Sun, 26 Apr 2015 11:27:44 +0000 (13:27 +0200)] 
Drop workarounds for WinCE and Interix

10 years agoMerge pull request #5 from daxtens/develop
Hans Kristian Rosbach [Sun, 26 Apr 2015 10:29:29 +0000 (12:29 +0200)] 
Merge pull request #5 from daxtens/develop

Build fixes

10 years agoMakefile.in: use match.lo for linking PIC 5/head
Daniel Axtens [Sun, 26 Apr 2015 09:13:11 +0000 (19:13 +1000)] 
Makefile.in: use match.lo for linking PIC

The rest of the items in the list are .lo files; this should be too.
Needed for ./configure --cover to work.

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoarch/x86: Use SFLAGS for linking x86.lo file, not CFLAGS.
Daniel Axtens [Sun, 26 Apr 2015 08:34:03 +0000 (18:34 +1000)] 
arch/x86: Use SFLAGS for linking x86.lo file, not CFLAGS.

Signed-off-by: Daniel Axtens <dja@axtens.net>
10 years agoActually commit the updated README file.
hansr [Fri, 10 Apr 2015 11:21:23 +0000 (13:21 +0200)] 
Actually commit the updated README file.
Update version identifier strings to reflect fork status.
Add zlib-ng identifier string.
Remove zlib2ansi script.

10 years agoUpdate readme and create LICENSE.md file
hansr [Fri, 10 Apr 2015 10:26:51 +0000 (12:26 +0200)] 
Update readme and create LICENSE.md file

10 years agoFix compilation of match.c on big-endian machines, and avoid
root [Thu, 11 Dec 2014 13:30:51 +0000 (14:30 +0100)] 
Fix compilation of match.c on big-endian machines, and avoid
usage of unoptimized builtins.

10 years agoFix version number extraction from zlib.h in configure.
root [Thu, 11 Dec 2014 13:29:30 +0000 (14:29 +0100)] 
Fix version number extraction from zlib.h in configure.
Configure will need more work to produce the proper zlib-ng named library files.

10 years agoAdd ZLIBNG_* version definitions and change comment at the top of
root [Thu, 11 Dec 2014 11:22:38 +0000 (12:22 +0100)] 
Add ZLIBNG_* version definitions and change comment at the top of
zlib.h for better clarity.

10 years agoImprove compatability with MSVC compiler by allowing usage of inline
root [Thu, 11 Dec 2014 10:47:56 +0000 (11:47 +0100)] 
Improve compatability with MSVC compiler by allowing usage of inline

10 years agoFix another typing mishap in configure
Hans Kristian Rosbach [Thu, 6 Nov 2014 20:11:15 +0000 (21:11 +0100)] 
Fix another typing mishap in configure

10 years agoFix typo in configure output
Hans Kristian Rosbach [Thu, 6 Nov 2014 20:07:12 +0000 (21:07 +0100)] 
Fix typo in configure output

10 years agoMerge longest_match implementation from CloudFlare, authored by
Hans Kristian Rosbach [Thu, 6 Nov 2014 19:59:54 +0000 (20:59 +0100)] 
Merge longest_match implementation from CloudFlare, authored by
Shuxin Yang in commit 31043308c3d3edfb487d2c4cbe7290bd5b63c65c at
https://github.com/cloudflare/zlib/commit/31043308c3d3edfb487d2c4cbe7290bd5b63c65c

This has been modified by me to fit into zlib-ng.

10 years agoMerge branch 'develop' of github.com:Dead2/zlib-ng into develop
Hans Kristian Rosbach [Thu, 6 Nov 2014 19:55:33 +0000 (20:55 +0100)] 
Merge branch 'develop' of github.com:Dead2/zlib-ng into develop

10 years agoAdd configure test for __builtin_ctzl() support in compiler
Hans Kristian Rosbach [Thu, 6 Nov 2014 19:54:38 +0000 (20:54 +0100)] 
Add configure test for __builtin_ctzl() support in compiler

10 years agoDrop support for old systems in configure. The remaining ones should
hansr [Thu, 6 Nov 2014 19:40:56 +0000 (20:40 +0100)] 
Drop support for old systems in configure. The remaining ones should
ideally be tested by someone familiar with them and a decision made
whether to keep/remove/update the detection and settings for them.

10 years agoAdd missing match.h file from last commit
hansr [Wed, 5 Nov 2014 19:46:55 +0000 (20:46 +0100)] 
Add missing match.h file from last commit

10 years agoRemove support for ASMV and ASMINF defines and clean up match.c handling.
hansr [Wed, 5 Nov 2014 12:54:07 +0000 (13:54 +0100)] 
Remove support for ASMV and ASMINF defines and clean up match.c handling.

This makes it easier to implement support for ASM replacements using
configure parameters if needed later. Also since zlib-ng uses
compiler intrinsics, this needed a cleanup in any case.

10 years agoTesting on a Raspberry Pi shows that -DUNALIGNED_OK and -DCRC32_UNROLL_LESS
Hans Kristian Rosbach [Sun, 2 Nov 2014 14:01:09 +0000 (15:01 +0100)] 
Testing on a Raspberry Pi shows that -DUNALIGNED_OK and -DCRC32_UNROLL_LESS
both give a consistent performance gain, so enable these on the armv6 arch.
Also enabled -DADLER32_UNROLL_LESS on the untested assumption that it will
also be faster.

10 years agoAdd "generic" arch dir that is used by default unless the arch has
hansr [Fri, 31 Oct 2014 12:10:48 +0000 (13:10 +0100)] 
Add "generic" arch dir that is used by default unless the arch has
specific support in the configure script.

10 years agoLets try that again
hansr [Fri, 31 Oct 2014 12:04:56 +0000 (13:04 +0100)] 
Lets try that again

10 years agoFine, lets try to make it portable too
hansr [Fri, 31 Oct 2014 12:00:55 +0000 (13:00 +0100)] 
Fine, lets try to make it portable too

10 years agoFix building for arches that dont set archdir in Configure
hansr [Fri, 31 Oct 2014 11:54:31 +0000 (12:54 +0100)] 
Fix building for arches that dont set archdir in Configure

10 years agoLet the CRC32_UNROLL_LESS define work on big endian systems as well.
hansr [Tue, 21 Oct 2014 12:53:37 +0000 (14:53 +0200)] 
Let the CRC32_UNROLL_LESS define work on big endian systems as well.

10 years agoRewrite K&R-style function prototypes to ANSI-C-style.
hansr [Sat, 18 Oct 2014 20:49:16 +0000 (22:49 +0200)] 
Rewrite K&R-style function prototypes to ANSI-C-style.
Only internal functions, no exported functions in this commit.

10 years agoRemove FAR variants of voidpf
hansr [Sat, 18 Oct 2014 10:11:48 +0000 (12:11 +0200)] 
Remove FAR variants of voidpf
And a few Bytef leftovers from test/example.c

10 years agoRemove workaround for systems where sizeof(int)<=2 (16-bit systems)
hansr [Fri, 17 Oct 2014 21:38:26 +0000 (23:38 +0200)] 
Remove workaround for systems where sizeof(int)<=2 (16-bit systems)

10 years agoRemove FAR variants of variables ushf, schf, Posf, Bytef, charf,
hansr [Thu, 16 Oct 2014 13:32:17 +0000 (15:32 +0200)] 
Remove FAR variants of variables ushf, schf, Posf, Bytef, charf,
intf, uIntf and uLongf

10 years agoRemove use of typedef()
hansr [Thu, 16 Oct 2014 11:33:16 +0000 (13:33 +0200)] 
Remove use of typedef()

10 years agoRemove more workarounds for really old compilers
hansr [Wed, 15 Oct 2014 13:30:00 +0000 (15:30 +0200)] 
Remove more workarounds for really old compilers

10 years agoRemove more workarounds for really old compilers
hansr [Wed, 15 Oct 2014 13:10:51 +0000 (15:10 +0200)] 
Remove more workarounds for really old compilers

10 years agoClean up x86 files to hide functions and variables that are not meant
hansr [Wed, 15 Oct 2014 11:50:52 +0000 (13:50 +0200)] 
Clean up x86 files to hide functions and variables that are not meant
to be used externally.

10 years agoReorganize optimization defines
hansr [Wed, 15 Oct 2014 11:11:17 +0000 (13:11 +0200)] 
Reorganize optimization defines
Enable x86_64 to skip checking for SSE2
Enable deflate_medium on all archs

10 years agoAdd notice about README.zlib FAQ.zlib Changelog.zlib being unmaintained
hansr [Wed, 15 Oct 2014 09:54:21 +0000 (11:54 +0200)] 
Add notice about README.zlib FAQ.zlib Changelog.zlib being unmaintained
copies from zlib 1.2.8

10 years agoRemove false statement in README
hansr [Wed, 15 Oct 2014 09:49:27 +0000 (11:49 +0200)] 
Remove false statement in README
Add copies of original README/FAQ/Changelog, postfixed with .zlib

10 years agoSmaller readme changes and additions
hansr [Wed, 15 Oct 2014 08:49:38 +0000 (10:49 +0200)] 
Smaller readme changes and additions

10 years agoUpdate documentation and version strings
hansr [Tue, 14 Oct 2014 11:03:48 +0000 (13:03 +0200)] 
Update documentation and version strings

10 years agoSeparate arch-specific code into separate folders
hansr [Tue, 14 Oct 2014 10:08:05 +0000 (12:08 +0200)] 
Separate arch-specific code into separate folders

10 years agoMerge x86 and x86_64 handling in configure.
hansr [Tue, 14 Oct 2014 08:01:18 +0000 (10:01 +0200)] 
Merge x86 and x86_64 handling in configure.
Add parameter to disable new strategies.
Add parameter to disable arch-specific optimizations.
(This is just the first few steps, more changes needed)

10 years agoDelete all contrib/ and examples/ code.
hansr [Mon, 13 Oct 2014 11:45:04 +0000 (13:45 +0200)] 
Delete all contrib/ and examples/ code.
Much of this seems to be outdated.

10 years agoinffast.c: add BITS and DROPBITS macros like inflate.c
Zhaoxiu Zeng [Sun, 27 Jul 2014 08:29:58 +0000 (16:29 +0800)] 
inffast.c: add BITS and DROPBITS macros like inflate.c

10 years agoFix compilation of test/infcover.c on linux
hansr [Mon, 13 Oct 2014 11:14:33 +0000 (13:14 +0200)] 
Fix compilation of test/infcover.c on linux

10 years agoRemove support for compiling with -DFASTEST
hansr [Mon, 13 Oct 2014 10:48:42 +0000 (12:48 +0200)] 
Remove support for compiling with -DFASTEST

10 years agoRemove unused variables
hansr [Mon, 13 Oct 2014 10:13:50 +0000 (12:13 +0200)] 
Remove unused variables

10 years agoRemove workarounds for non-ANSI-C compatible compilers (Part 2)
hansr [Sun, 12 Oct 2014 20:57:27 +0000 (22:57 +0200)] 
Remove workarounds for non-ANSI-C compatible compilers (Part 2)
-Removing usage of OF() definition

10 years agoRemove workarounds for non-ANSI-C compatible compilers (Part 1)
hansr [Sun, 12 Oct 2014 10:38:06 +0000 (12:38 +0200)] 
Remove workarounds for non-ANSI-C compatible compilers (Part 1)

10 years agoRemove support for SASC and TURBOC compilers
hansr [Fri, 10 Oct 2014 11:26:04 +0000 (13:26 +0200)] 
Remove support for SASC and TURBOC compilers

10 years agoClean up likely/unlikely definitions
hansr [Thu, 9 Oct 2014 13:10:33 +0000 (15:10 +0200)] 
Clean up likely/unlikely definitions

10 years agoRemove legacy 16-bit workarounds
hansr [Thu, 9 Oct 2014 12:35:50 +0000 (14:35 +0200)] 
Remove legacy 16-bit workarounds

10 years agoMissed one, (Remove code related to legacy OS)
hansr [Thu, 9 Oct 2014 12:05:53 +0000 (14:05 +0200)] 
Missed one, (Remove code related to legacy OS)

10 years agoRemove FAR definition
hansr [Thu, 9 Oct 2014 11:55:20 +0000 (13:55 +0200)] 
Remove FAR definition
Remove a few leftovers from the legacy OS support removal

10 years agoRemove code related to older operating systems
hansr [Thu, 9 Oct 2014 11:28:39 +0000 (13:28 +0200)] 
Remove code related to older operating systems

10 years agoRemove makefiles for legacy operating systems
hansr [Thu, 9 Oct 2014 10:45:35 +0000 (12:45 +0200)] 
Remove makefiles for legacy operating systems

10 years agoMerge branch 'opt-byteswap' of github.com:jack-pappas/zlib into develop
hansr [Thu, 9 Oct 2014 09:30:57 +0000 (11:30 +0200)] 
Merge branch 'opt-byteswap' of github.com:jack-pappas/zlib into develop

10 years agoFix merge conflict between commits d948170 and 32de507
hansr [Wed, 8 Oct 2014 12:19:05 +0000 (14:19 +0200)] 
Fix merge conflict between commits d948170 and 32de507

10 years agoMinor enhancement to put_short() macro. This change saw marginal speedup
Shuxin Yang [Sun, 20 Apr 2014 22:50:33 +0000 (15:50 -0700)] 
Minor enhancement to put_short() macro. This change saw marginal speedup
(about 0% to 3% depending on the compression level and input). I guess
the speedup likely arises from following facts:

 1) "s->pending" now is loaded once, and stored once. In the original
    implementation, it needs to be loaded and stored twice as the
    compiler isn't able to disambiguate "s->pending" and
    "s->pending_buf[]"

 2) better code generations:
   2.1) no instruction are needed for extracting two bytes from a short.
   2.2) need less registers
   2.3) stores to adjacent bytes are merged into a single store, albeit
        at the cost of penalty of potentially unaligned access.

Conflicts:
trees.c

10 years agoFix merge conflict between commits d306c75 and 2c888ab
hansr [Wed, 8 Oct 2014 12:16:38 +0000 (14:16 +0200)] 
Fix merge conflict between commits d306c75 and 2c888ab

10 years agoRestructure the loop, and see about 3% speedup in run time. I believe the
Shuxin Yang [Tue, 18 Mar 2014 01:17:23 +0000 (18:17 -0700)] 
Restructure the loop, and see about 3% speedup in run time. I believe the
speedup arises from:
    o. Remove the conditional branch in the loop
    o. Remove some indirection memory accesses:
       The memory accesses to "s->prev_length" s->strstart" cannot be promoted
       to register because the compiler is not able to disambiguate them with
       store-operation in INSERT_STRING()
    o. Convert non-countable loop to countable loop.
       I'm not sure if this change really contribute, in general, countable
       loop is lots easier to optimized than non-countable loop.

Conflicts:
deflate.h

10 years agoFix merge conflict between commits 5640481 and 5545321
hansr [Wed, 8 Oct 2014 12:14:37 +0000 (14:14 +0200)] 
Fix merge conflict between commits 5640481 and 5545321
(and clean out some code that is not strictly needed)

10 years ago Rewrite the loops such that gcc can vectorize them using saturated-sub
shuxinyang [Mon, 10 Mar 2014 00:20:02 +0000 (17:20 -0700)] 
  Rewrite the loops such that gcc can vectorize them using saturated-sub
on x86-64 architecture. Speedup the performance by some 7% on my linux box
with corei7 archiecture.

  The original loop is legal to be vectorized; gcc 4.7.* and 4.8.*
somehow fail to catch this case. There are still have room to squeeze
from the vectorized code. However, since these loops now account for about
1.5% of execution time, it is not worthwhile to sequeeze the performance
via hand-writing assembly.

  The original loops are guarded with "#ifdef NOT_TWEAK_COMPILER". By
default, the modified version is picked up unless the code is compiled
explictly with -DNOT_TWEAK_COMPILER.

10 years agoFixed broken macro.
Jack Pappas [Sun, 14 Sep 2014 22:36:38 +0000 (18:36 -0400)] 
Fixed broken macro.

10 years agoUse compiler intrinsics for the ZSWAP32 macro to take advantage of hardware support...
Jack Pappas [Sun, 14 Sep 2014 21:57:16 +0000 (17:57 -0400)] 
Use compiler intrinsics for the ZSWAP32 macro to take advantage of hardware support when available.

11 years agoAdd crc_ forward declarations to deflate and add read_buf fwd dcl to fill_window_sse. v1.2.8-jtkv4 v1.2.8_jtkv4
Martin O. Pollard [Wed, 11 Jun 2014 16:53:22 +0000 (17:53 +0100)] 
Add crc_ forward declarations to deflate and add read_buf fwd dcl to fill_window_sse.

11 years agoAdd forward declarations for fill_window_sse and flush_pending to deflate_quick.c.
Martin O. Pollard [Tue, 10 Jun 2014 12:53:05 +0000 (13:53 +0100)] 
Add forward declarations for fill_window_sse and flush_pending to deflate_quick.c.

11 years agoInclude wmmintrin.h in configure test and crc_folding.c aid clang compilation.
Martin O. Pollard [Tue, 10 Jun 2014 12:31:55 +0000 (13:31 +0100)] 
Include wmmintrin.h in configure test and crc_folding.c aid clang compilation.

11 years agodeflate: avoid use of uninitialized variable
Nathan Kidd [Thu, 22 May 2014 18:20:44 +0000 (14:20 -0400)] 
deflate: avoid use of uninitialized variable

(Note emit_match() doesn't currently use the value at all.)

Fixes #4

11 years agodeflate: add new deflate_medium strategy
Jim Kukunas [Thu, 18 Jul 2013 22:45:18 +0000 (15:45 -0700)] 
deflate: add new deflate_medium strategy

From: Arjan van de Ven <arjan@linux.intel.com>

As the name suggests, the deflate_medium deflate strategy is designed
to provide an intermediate strategy between deflate_fast and deflate_slow.
After finding two adjacent matches, deflate_medium scans left from
the second match in order to determine whether a better match can be
formed.

Fixes #2