diff options
Diffstat (limited to 'test-suite/standalone/sassy/tests/mmx.asm')
-rw-r--r-- | test-suite/standalone/sassy/tests/mmx.asm | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/test-suite/standalone/sassy/tests/mmx.asm b/test-suite/standalone/sassy/tests/mmx.asm new file mode 100644 index 000000000..61e854c46 --- /dev/null +++ b/test-suite/standalone/sassy/tests/mmx.asm @@ -0,0 +1,65 @@ +BITS 32 +section .text +foo: +emms +movd mm1, ebx +movd mm1, [edx] +movd ebx, mm1 +movd [edx], mm1 +movd xmm0, ebx +movd xmm0, [edx] +movd ebx, xmm0 +movd [edx], xmm0 +movq mm1, mm0 +movq mm1, [edx] +movq mm0, mm1 +movq [edx], mm1 +movq xmm0, xmm1 +movq xmm0, [edx] +movq xmm1, xmm0 +movq [edx], xmm0 +pand mm0, mm1 +pandn mm1, [edx] +por xmm2, xmm3 +pxor xmm4, [ecx] +packsswb mm0, mm1 +packssdw mm1, [edx] +packuswb xmm2, xmm3 +punpckhbw xmm4, [ecx] +punpckhwd mm0, mm1 +punpckhdq mm1, [edx] +paddb xmm2, xmm3 +paddw xmm4, [ecx] +paddd mm0, mm1 +paddsb mm1, [edx] +paddsw xmm2, xmm3 +paddusb xmm4, [ecx] +paddusw mm0, mm1 +psubb mm1, [edx] +psubw xmm2, xmm3 +psubd xmm4, [ecx] +psubsb mm0, mm1 +psubsw mm1, [edx] +psubusb xmm2, xmm3 +psubusw xmm4, [ecx] +pmullw mm0, mm1 +pmulhw mm1, [edx] +pmaddwd xmm2, xmm3 +pcmpeqb xmm4, [ecx] +pcmpeqw mm0, mm1 +pcmpeqd mm1, [edx] +pcmpgtb xmm2, xmm3 +pcmpgtw xmm4, [ecx] +pcmpgtd mm0, mm1 +punpcklbw mm2, mm3 +punpcklwd mm4, [ebx] +punpckldq xmm5, xmm6 +punpcklbw xmm7, [edx] +psrlw mm7, mm6 +psrld mm5, [edx] +psrlq xmm7, xmm6 +psllw xmm5, [edx] +pslld mm4, 100 +psllq xmm4, 100 +psraw mm7, mm6 +psrad mm5, [edx] |