mmintrin.mh

来自「开放源码的编译器open watcom 1.6.0版的源代码」· MH 代码 · 共 527 行 · 第 1/2 页

MH
527
字号

#pragma aux (__m_binary) _m_paddusw =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "paddusw mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubb =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubb  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubw =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubd =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubd  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubsb =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubsb mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubsw =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubsw mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubusb =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubusb mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psubusw =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psubusw mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pmaddwd =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pmaddwd mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pmulhw =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pmulhw mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pmullw =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pmullw mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psllw =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psllw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psllwi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psllw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pslld =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pslld  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pslldi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "pslld  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psllq =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psllq  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psllqi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psllq  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psraw =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psraw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrawi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psraw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrad =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psrad  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psradi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psrad  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrlw =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psrlw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrlwi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psrlw  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrld =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psrld  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrldi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psrld  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrlq =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "psrlq  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_psrlqi =    \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movd   mm1,edx"        \
                "psrlq  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pand =      \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pand   mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pandn =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pandn  mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_por =       \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "por    mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pxor =      \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pxor   mm0,mm1"        \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pcmpeqb =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pcmpeqb mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pcmpeqw =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pcmpeqw mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pcmpeqd =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pcmpeqd mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pcmpgtb =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pcmpgtb mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pcmpgtw =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pcmpgtw mm0,mm1"       \
                "movq   [esi],mm0"

#pragma aux (__m_binary) _m_pcmpgtd =   \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "pcmpgtd mm0,mm1"       \
                "movq   [esi],mm0"

:include cplusepi.sp
#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?