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>
10 files changed