将 _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/