orl*_*rlp 1 g++ intrinsics avx2
我正在尝试使用AVX2内部函数_mm256_loadu2_m128i,但g ++ 4.8.2似乎没有它。
有什么办法吗?
我在GCC和Clang中有同样的问题。但是,它在ICC中编译。您可以通过http://gcc.godbolt.org/与GCC,Clang和ICC进行测试
请注意,这是AVX内在函数,而不是AVX2。大部分256位整数加载和存储内部函数仅需要AVX。AVX2提供了一些聚集和遮罩负载,但其他所有仅需要AVX。
由于Haswell可以一次加载两个128位值,因此您可以获得与_mm256_loadu2_m128i使用相同的效果 _mm256_inserti128_si256。像这样
#include <immintrin.h>
int main() {
int low[4];
int high[4];
_mm256_inserti128_si256(_mm256_castsi128_si256(
_mm_loadu_si128((__m128i*)low)),
_mm_loadu_si128((__m128i*)high),1);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1488 次 |
| 最近记录: |