The gcc version in CentOS 7 is 4.8.2 (released in Mar 2013).
But Arm added the support for 'arm_acle.h' in gcc 5.1 (released in Jun 2014).
And there are also some bugs in Arm gcc 4.8.
The patch is to detect GCC(greater than 5.1) version for Arm crc32c.
Change-Id: I718b9b89f952fed72c8795a176ebbe5395c8dd5e
Signed-off-by: Yuqi Gu <yuqi.gu@arm.com>
ARMv8 (AArch64) CPUs implement the CRC32 extension which is implemented by inline assembly ,
so they can also benefit from hardware acceleration in IO-intensive workloads.
The patch optimizes crc32c calculate with the armv8 crypto instruction(Intrinsics) when available
rather than original linear crc instructions.
Change-Id: I05d36a64c726d910c47befad93390108f4e6567f
Signed-off-by: Yuqi Gu <yuqi.gu@arm.com>
Make mariadb crc32 lib platform independent
It looks strange that someone can make use of 2 crc libraries
(Power64 or AArch64) at the same time.
The patch sets macros 'CRC32_LIBRARY' to make platform independence as an optional crc32 library.
Change-Id: I68bbf73cafb6a12f7fb105ad57d117b114a8c4af
Signed-off-by: Yuqi Gu <yuqi.gu@arm.com>