简体   繁体   English

我在哪里可以找到 crc32intrin.h?

[英]Where can I find crc32intrin.h?

Where can I find the header file crc32intrin.h ?我在哪里可以找到 header 文件crc32intrin.h

It is related to zlib.它与 zlib 有关。

I am converting C++ code to Java, and this name is repeatedly coming up, but I can't find it.我正在把C++码转成Java,这个名字反复出现,就是找不到。

The Clang compiler ships it. Clang 编译器提供了它。 GCC does not. GCC 没有。 Here is its documentation and a link to the source code: https://clang.llvm.org/doxygen/crc32intrin_8h.html这是它的文档和源代码链接: https://clang.llvm.org/doxygen/crc32intrin_8h.html

Normally you should just include <immintrin.h> .通常你应该只包含<immintrin.h>

Intel's intrinsics guide documents _mm_crc32_u64 , _u32, etc. as being in <nmmintrin.h> (new in Nehalem?) - https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html#techs=SSE_ALL,Other&ig_expand=6243,519,1563&text=crc32英特尔的内在函数指南文档_mm_crc32_u64 、_u32 等在<nmmintrin.h>中(Nehalem 中的新功能?)- https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index .html#techs=SSE_ALL,Other&ig_expand=6243,519,1563&text=crc32

GCC does provide these intrinsics (in smmintrin.h as it turns out), but crc32intrin.h is a clang implementation detail. GCC 确实提供了这些内在函数(事实证明在smmintrin.h中),但crc32intrin.h是 clang 的实现细节。

These days usually best to include immintrin.h to pull in all known intrinsics.现在通常最好包含immintrin.h以引入所有已知的内在函数。 (Unfortunately getting a bit bulky with AVX-512 having boatloads, so not great for compile times.) GCC and clang will stop you from using intrinsics you didn't enable with options like -march=x86-64-v3 (similar to haswell but without tune=) or x86-64-v2 (similar to nehalem ). (不幸的是,AVX-512 有点笨重,所以编译时间不是很好。)GCC 和 clang 将阻止你使用你没有启用的内在函数,比如-march=x86-64-v3 (类似于haswell但没有 tune=) 或x86-64-v2 (类似于nehalem )。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM