【发布时间】:2020-08-02 10:11:13
【问题描述】:
基本上,我的程序是这样的:
#include <immintrin.h>
...
int* buf = (int*)_mm_malloc(sizeof(int) * 8, 32);
__m256i vi;
//some operations on vi
...
_mm256_store_epi32(buf, vi);
_mm_free(buf)
编译器在构建程序时抱怨“错误:'_mm256_store_epi32' 未在此范围内声明...注意:建议的替代方案:'_mm256_store_epi64'”在构建程序时(带有标志-mavx -mavx2)。令我困惑的是,一旦替换为_mm256_store_epi64,它就编译成功了。我的 gcc 版本是 7.5.0。
here 发布了一个类似的问题,但没有帮助。任何人都可以提供任何解决方法吗?
【问题讨论】:
标签: c++ gcc intrinsics avx avx512