small cleanup in crc32

This commit is contained in:
Martins Mozeiko
2017-11-05 02:41:52 -08:00
parent e987fe1c5d
commit 4e84a279a8
+12 -12
View File
@@ -297,23 +297,23 @@ uint32_t crc32_done_x86(crc32_ctx* ctx)
a = _mm_clmulepi64_si128(xmm0, fold, 0x10); a = _mm_clmulepi64_si128(xmm0, fold, 0x10);
b = _mm_clmulepi64_si128(xmm0, fold, 0x01); b = _mm_clmulepi64_si128(xmm0, fold, 0x01);
xmm1 = _mm_xor_si128(xmm1, a); t = _mm_xor_si128(xmm1, a);
xmm1 = _mm_xor_si128(xmm1, b); t = _mm_xor_si128(t, b);
a = _mm_clmulepi64_si128(xmm1, fold, 0x10); a = _mm_clmulepi64_si128(t, fold, 0x10);
b = _mm_clmulepi64_si128(xmm1, fold, 0x01); b = _mm_clmulepi64_si128(t, fold, 0x01);
xmm2 = _mm_xor_si128(xmm2, a); t = _mm_xor_si128(xmm2, a);
xmm2 = _mm_xor_si128(xmm2, b); t = _mm_xor_si128(t, b);
a = _mm_clmulepi64_si128(xmm2, fold, 0x10); a = _mm_clmulepi64_si128(t, fold, 0x10);
b = _mm_clmulepi64_si128(xmm2, fold, 0x01); b = _mm_clmulepi64_si128(t, fold, 0x01);
xmm3 = _mm_xor_si128(xmm3, a); t = _mm_xor_si128(xmm3, a);
xmm3 = _mm_xor_si128(xmm3, b); t = _mm_xor_si128(t, b);
fold = _mm_setr_epi32(0xccaa009e, 0x00000000, 0x63cd6124, 0x00000001); fold = _mm_setr_epi32(0xccaa009e, 0x00000000, 0x63cd6124, 0x00000001);
a = _mm_clmulepi64_si128(xmm3, fold, 0); a = _mm_clmulepi64_si128(t, fold, 0);
b = _mm_srli_si128(xmm3, 8); b = _mm_srli_si128(t, 8);
a = _mm_xor_si128(a, b); a = _mm_xor_si128(a, b);
b = _mm_slli_si128(a, 4); b = _mm_slli_si128(a, 4);