c – C:x86 Intel内在函数使用_mm_log2_ps() – >错误:不兼容类型’int’?

c – C:x86 Intel内在函数使用_mm_log2_ps() – >错误:不兼容类型’int’?,第1张

概述我正在尝试将log2应用到__m128变量上.像这样: #include <immintrin.h>int main (void) { __m128 two_v = {2.0, 2.0, 2.0, 2.0}; __m128 log2_v = _mm_log2_ps(two_v); // log_2 := log(2) return 0;} 尝试编译它会返回此错误: e 我正在尝试将log2应用到__m128变量上.像这样:

#include <immintrin.h>int main (voID) {    __m128 two_v = {2.0,2.0,2.0};    __m128 log2_v = _mm_log2_ps(two_v); // log_2 := log(2)    return 0;}

尝试编译它会返回此错误:

error: initializing '__m128' with an Expression of      incompatible type 'int'                __m128 log2_v = _mm_log2_ps(two_v); // log_2 := log(2)                       ^        ~~~~~~~~~~~~~~~~~~

我该如何解决?

解决方法 您查看的immintrin.h和用于编译的immintrin.h是不同的.
可能,您正在研究特定于Intel的标头(在/opt/intel/include/immintrin.h之类的地方),而您的编译器使用默认的immintrin.h

正如所说,extern __m128 _mm_log2_ps(__ m128 v1)是SVML routine,所以
我看到的第一个解决方案是使用Intel Compiler.对于非商业开发,它可以免费用于linux.

虽然您可以使用不同的编译器在编译期间将自定义immintrin.h文件的包含路径指定为第一个参数,但我认为您会得到太多错误 – 只是因为此标头是特定于Intel的.

总结

以上是内存溢出为你收集整理的c – C:x86 Intel内在函数使用_mm_log2_ps() – >错误:不兼容类型’int’?全部内容,希望文章能够帮你解决c – C:x86 Intel内在函数使用_mm_log2_ps() – >错误:不兼容类型’int’?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1226987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存