annotate src/zlib-1.2.7/contrib/asm686/README.686 @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents e13257ea84a4
children
rev   line source
Chris@4 1 This is a patched version of zlib, modified to use
Chris@4 2 Pentium-Pro-optimized assembly code in the deflation algorithm. The
Chris@4 3 files changed/added by this patch are:
Chris@4 4
Chris@4 5 README.686
Chris@4 6 match.S
Chris@4 7
Chris@4 8 The speedup that this patch provides varies, depending on whether the
Chris@4 9 compiler used to build the original version of zlib falls afoul of the
Chris@4 10 PPro's speed traps. My own tests show a speedup of around 10-20% at
Chris@4 11 the default compression level, and 20-30% using -9, against a version
Chris@4 12 compiled using gcc 2.7.2.3. Your mileage may vary.
Chris@4 13
Chris@4 14 Note that this code has been tailored for the PPro/PII in particular,
Chris@4 15 and will not perform particuarly well on a Pentium.
Chris@4 16
Chris@4 17 If you are using an assembler other than GNU as, you will have to
Chris@4 18 translate match.S to use your assembler's syntax. (Have fun.)
Chris@4 19
Chris@4 20 Brian Raiter
Chris@4 21 breadbox@muppetlabs.com
Chris@4 22 April, 1998
Chris@4 23
Chris@4 24
Chris@4 25 Added for zlib 1.1.3:
Chris@4 26
Chris@4 27 The patches come from
Chris@4 28 http://www.muppetlabs.com/~breadbox/software/assembly.html
Chris@4 29
Chris@4 30 To compile zlib with this asm file, copy match.S to the zlib directory
Chris@4 31 then do:
Chris@4 32
Chris@4 33 CFLAGS="-O3 -DASMV" ./configure
Chris@4 34 make OBJA=match.o
Chris@4 35
Chris@4 36
Chris@4 37 Update:
Chris@4 38
Chris@4 39 I've been ignoring these assembly routines for years, believing that
Chris@4 40 gcc's generated code had caught up with it sometime around gcc 2.95
Chris@4 41 and the major rearchitecting of the Pentium 4. However, I recently
Chris@4 42 learned that, despite what I believed, this code still has some life
Chris@4 43 in it. On the Pentium 4 and AMD64 chips, it continues to run about 8%
Chris@4 44 faster than the code produced by gcc 4.1.
Chris@4 45
Chris@4 46 In acknowledgement of its continuing usefulness, I've altered the
Chris@4 47 license to match that of the rest of zlib. Share and Enjoy!
Chris@4 48
Chris@4 49 Brian Raiter
Chris@4 50 breadbox@muppetlabs.com
Chris@4 51 April, 2007