From fbb3ce541ef79cad1710e88a27a5babb5f6f8e5b Mon Sep 17 00:00:00 2001 From: Lasse Collin Date: Thu, 11 Jan 2024 15:01:50 +0200 Subject: [PATCH] liblzma: CRC: Add a comment to crc_x86_clmul.h about BUILDING_ macros. --- src/liblzma/check/crc_x86_clmul.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/liblzma/check/crc_x86_clmul.h b/src/liblzma/check/crc_x86_clmul.h index fbf042a5..f407da5c 100644 --- a/src/liblzma/check/crc_x86_clmul.h +++ b/src/liblzma/check/crc_x86_clmul.h @@ -11,6 +11,12 @@ /// and the public domain code from https://github.com/rawrunprotected/crc /// (URLs were checked on 2023-10-14). /// +/// While this file has both CRC32 and CRC64 implementations, only one +/// should be built at a time to ensure that crc_simd_body() is inlined +/// even with compilers with which lzma_always_inline expands to plain inline. +/// The version to build is selected by defining BUILDING_CRC32_CLMUL or +/// BUILDING_CRC64_CLMUL before including this file. +/// /// FIXME: Builds for 32-bit x86 use the assembly .S files by default /// unless configured with --disable-assembler. Even then the lookup table /// isn't omitted in crc64_table.c since it doesn't know that assembly