将 _m128(4 个单词 a b c d)减少到一个单词的最佳方法( sse2 )是什么?
我想要每个 _m128 组件的低部分:

int result = ( _m128.a & 0x000000ff ) <<  24
        | ( _m128.b & 0x000000ff ) << 16
        | ( _m128.c & 0x000000ff ) << 8
        | ( _m128.d & 0x000000ff ) << 0

是否有一个内在因素?谢谢 !

最佳答案

仅供引用,sse3 内在函数 _mm_shuffle_epi8 可以完成这项工作:(在这种情况下使用掩码 0x0004080c )

关于SSE2 : How to reduce a _m128 to a word,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1728673/

10-10 05:06