From: Jia Tan Date: Wed, 18 Oct 2023 14:50:25 +0000 (+0800) Subject: liblzma: Add the crc_always_inline macro to crc_simd_body(). X-Git-Tag: v5.5.1alpha~128 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40abd88afcc61a8157fcd12d78d491caeb8e12be;p=thirdparty%2Fxz.git liblzma: Add the crc_always_inline macro to crc_simd_body(). Forcing this to be inline has a significant speed improvement at the cost of a few repeated instructions. The compilers tested on did not inline this function since it is large and is used twice in the same translation unit. --- diff --git a/src/liblzma/check/crc_clmul.c b/src/liblzma/check/crc_clmul.c index f53fcc92..6ebb1232 100644 --- a/src/liblzma/check/crc_clmul.c +++ b/src/liblzma/check/crc_clmul.c @@ -64,7 +64,7 @@ __attribute__((__target__("ssse3,sse4.1,pclmul"))) #if lzma_has_attribute(__no_sanitize_address__) __attribute__((__no_sanitize_address__)) #endif -static inline void +static crc_always_inline void crc_simd_body(const uint8_t *buf, const size_t size, __m128i *v0, __m128i *v1, const __m128i vfold16, const __m128i initial_crc) {