[Zlib-devel] [3/8][RFC V3 Patch] Add special ARM Adler32 version

Jan Seiffert kaffeemonster at googlemail.com
Sun Apr 24 12:28:02 EDT 2011


This adds an NEON version, a iWMMXt version for Intel (now Marvel)
StrongARM and a version for ARMv6 DSP instructions of Adler32.

The NEON Version is coded in intrinsic, but there are some details
left with the endianness. If i understand it right it should work with
any ARM compiler which understands NEON.
The iWMMXt version tries to use intrinsic, but that is a little
complicated. This way there may be a chance it may work with the MS
Visual Studio for ARM (WinCE), but accord, to MSDN there seem to be
some little discrepancies. To make matters worse GCC does not like
it's own mmintrin.h.
The ARMv6 DSP version uses inline ASM, so i restricted it to GCC (or
compatible compiler, like clang, can also be used. Clang should find
the way in by itself, it disguises as GCC 4.2)

Unfortunately i don't have any ARM, so the Code is untested, and there
are some TODO left.
Also some benchmarking would be needed.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 03-arm.patch
Type: text/x-patch
Size: 23204 bytes
Desc: not available
URL: <http://madler.net/pipermail/zlib-devel_madler.net/attachments/20110424/f1489e7e/attachment.bin>


More information about the Zlib-devel mailing list