liblzma: CLMUL CRC64: Work around a bug in MSVC, second attempt.
commit0b8fa310cf56fec55663f62340e49e8e1441594f
authorLasse Collin <lasse.collin@tukaani.org>
Tue, 10 Jan 2023 20:14:03 +0000 (10 22:14 +0200)
committerLasse Collin <lasse.collin@tukaani.org>
Tue, 10 Jan 2023 20:15:55 +0000 (10 22:15 +0200)
tree3740e72040cd2cc4783e42f146cb3f5332995eea
parent765354b50c2886fc0d294d6be3b207f7ae2ada70
liblzma: CLMUL CRC64: Work around a bug in MSVC, second attempt.

This affects only 32-bit x86 builds. x86-64 is OK as is.

I still cannot easily test this myself. The reporter has tested
this and it passes the tests included in the CMake build and
performance is good: raw CRC64 is 2-3 times faster than the
C version of the slice-by-four method. (Note that liblzma doesn't
include a MSVC-compatible version of the 32-bit x86 assembly code
for the slice-by-four method.)

Thanks to Iouri Kharon for figuring out a fix, testing, and
benchmarking.
src/liblzma/check/crc64_fast.c