diff options
| author | Ilya Leoshkevich <iii@linux.ibm.com> | 2025-09-10 11:28:03 +0200 |
|---|---|---|
| committer | Mark Adler <git@madler.net> | 2026-01-27 20:22:17 -0800 |
| commit | 07f2d4237eade624182b1cf11f1f516985aed620 (patch) | |
| tree | fad27d61fc7e05c8bc08662fd1caa4fb2bea928e /contrib/crc32vx/README | |
| parent | 3382ba45561ea82a1d8976578b2a41facff3b8bc (diff) | |
| download | zlib-07f2d4237eade624182b1cf11f1f516985aed620.tar.gz zlib-07f2d4237eade624182b1cf11f1f516985aed620.tar.bz2 zlib-07f2d4237eade624182b1cf11f1f516985aed620.zip | |
Vectorize the CRC-32 calculation on the s390x.
Use vector extensions when compiling for s390x and binutils knows
about them. At runtime, check whether kernel supports vector
extensions (it has to be not just the CPU, but also the kernel)
and choose between the regular and the vectorized implementations.
Co-authored-by: Eduard Stefes <eddy@linux.ibm.com>
Diffstat (limited to 'contrib/crc32vx/README')
| -rw-r--r-- | contrib/crc32vx/README | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/contrib/crc32vx/README b/contrib/crc32vx/README new file mode 100644 index 00000000..329610d5 --- /dev/null +++ b/contrib/crc32vx/README | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | IBM Z mainframes starting from version z13 provide vector instructions, which | ||
| 2 | allows vectorization of crc32. This extension is build by default when targeting | ||
| 3 | ibm s390x. However this extension can disabled if desired: | ||
| 4 | |||
| 5 | # for configure build | ||
| 6 | $ ./configure --disable-crcvx | ||
| 7 | |||
| 8 | # for cmake build | ||
| 9 | $ cmake .. -DZLIB_CRC32VX=off | ||
