SSE中的等于零指令

时间:2015-01-14 12:09:15

标签: c++ sse avx

假设我有一个128位整数向量:

__m128i x;

然后如何知道x中的所有位是否为零?

检查每个打包的整数是一种简单的方法。

但我正在寻找一种更快捷的方式。

SSE有指令可以做这项工作吗?

1 个答案:

答案 0 :(得分:3)

如果是SSE 4.1,您可以使用_mm_testz_si128,例如

_mm_testz_si128(idata, _mm_set1_epi32(0x0000))

对于SSE2兼容解决方案,也可以查看Check XMM register for all zeroes