问候大家。由于某些特殊原因,我们必须重新实现 AVX2 intrics,如下所示:
static __inline __m256i __attribute__((__always_inline__, __nodebug__))
_xmm256_and_si256(__m256i s1, __m256i s2){
__m256i result;
__asm__ ("vpand %2, %1, %0": "=r"(result): "rm" "s1", "rm" "s2" ) ;
// sorry, this statement does not work
return result;
}
对应的函数是_mm256_and_si256(__m256i s1, __m256i s2)
,它是一个 AVX2 内部函数。通过谷歌搜索后,我发现了一些类似的东西,比如连接一些基本类型,比如,int
输入寄存器。但是,我仍然没有找到连接输入参数和输入寄存器以及用于 asm代码的方法。float
long
s1
s2
ymm1
ymm2
vpand
所以这里的任何人都愿意帮助我使上述示例工作吗?非常感谢你!