]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
Fix crc32_fold_pclmulqdq.c(241): error C2719: 'fold3': formal parameter with requeste...
authorVladislav Shchapov <vladislav@shchapov.ru>
Sun, 2 Oct 2022 13:16:24 +0000 (18:16 +0500)
committerHans Kristian Rosbach <hk-github@circlestorm.org>
Tue, 11 Oct 2022 19:25:02 +0000 (21:25 +0200)
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
arch/x86/crc32_fold_pclmulqdq.c
arch/x86/crc32_fold_pclmulqdq_tpl.h

index 104455e36e474e7e58e82e50195d822fe9d6a24c..5754b8d71333320281ec1810c2bd08c126d50f01 100644 (file)
@@ -238,17 +238,18 @@ static inline void crc32_fold_load(__m128i *fold, __m128i *fold0, __m128i *fold1
     *fold3 = _mm_load_si128(fold + 3);
 }
 
-static inline void crc32_fold_save(__m128i *fold, __m128i fold0, __m128i fold1, __m128i fold2, __m128i fold3) {
-    _mm_storeu_si128(fold + 0, fold0);
-    _mm_storeu_si128(fold + 1, fold1);
-    _mm_storeu_si128(fold + 2, fold2);
-    _mm_storeu_si128(fold + 3, fold3);
+static inline void crc32_fold_save(__m128i *fold, const __m128i *fold0, const __m128i *fold1,
+                                   const __m128i *fold2, const __m128i *fold3) {
+    _mm_storeu_si128(fold + 0, *fold0);
+    _mm_storeu_si128(fold + 1, *fold1);
+    _mm_storeu_si128(fold + 2, *fold2);
+    _mm_storeu_si128(fold + 3, *fold3);
 }
 
 Z_INTERNAL uint32_t crc32_fold_pclmulqdq_reset(crc32_fold *crc) {
     __m128i xmm_crc0 = _mm_cvtsi32_si128(0x9db42487);
     __m128i xmm_zero = _mm_setzero_si128();
-    crc32_fold_save((__m128i *)crc->fold, xmm_crc0, xmm_zero, xmm_zero, xmm_zero);
+    crc32_fold_save((__m128i *)crc->fold, &xmm_crc0, &xmm_zero, &xmm_zero, &xmm_zero);
     return 0;
 }
 
index 36207953bc68f584aef666f7a22f9cb6c42334c2..0799638e0471db1d2916fb94d42181470e21bf0b 100644 (file)
@@ -184,6 +184,6 @@ partial:
         partial_fold((size_t)len, &xmm_crc0, &xmm_crc1, &xmm_crc2, &xmm_crc3, &xmm_crc_part);
     }
 
-    crc32_fold_save((__m128i *)crc->fold, xmm_crc0, xmm_crc1, xmm_crc2, xmm_crc3);
+    crc32_fold_save((__m128i *)crc->fold, &xmm_crc0, &xmm_crc1, &xmm_crc2, &xmm_crc3);
 }
 #endif