我有以下瓶颈功能。
typedef unsigned char byte;
void CompareArrays(const byte * p1Start, const byte * p1End, const byte * p2, byte * p3)
{
const byte b1 = 128-30;
const byte b2 = 128+30;
for (const byte * p1 = p1Start; p1 != p1End; ++p1, ++p2, ++p3) {
*p3 = (*p1 < *p2 ) ? b1 : b2;
}
}
我想C++
用 SSE2 内部函数替换代码。我已经尝试过_mm_cmpgt_epi8
,但它使用了签名比较。我需要无符号比较。
有什么技巧(SSE、SSE2、SSSE3)来解决我的问题吗?
注意: 在这种情况下,我不想使用多线程。