--- /dev/null
+# Check 64bit SSE to AVX instructions
+
+ .allow_index_reg
+ .text
+_start:
+# Tests for op mem64
+ ldmxcsr (%rcx)
+ stmxcsr (%rcx)
+
+# Tests for op xmm/mem128, xmm
+ cvtdq2ps %xmm4,%xmm6
+ cvtdq2ps (%rcx),%xmm4
+ cvtpd2dq %xmm4,%xmm6
+ cvtpd2dq (%rcx),%xmm4
+ cvtpd2ps %xmm4,%xmm6
+ cvtpd2ps (%rcx),%xmm4
+ cvtps2dq %xmm4,%xmm6
+ cvtps2dq (%rcx),%xmm4
+ cvttpd2dq %xmm4,%xmm6
+ cvttpd2dq (%rcx),%xmm4
+ cvttps2dq %xmm4,%xmm6
+ cvttps2dq (%rcx),%xmm4
+ movapd %xmm4,%xmm6
+ movapd (%rcx),%xmm4
+ movaps %xmm4,%xmm6
+ movaps (%rcx),%xmm4
+ movdqa %xmm4,%xmm6
+ movdqa (%rcx),%xmm4
+ movdqu %xmm4,%xmm6
+ movdqu (%rcx),%xmm4
+ movshdup %xmm4,%xmm6
+ movshdup (%rcx),%xmm4
+ movsldup %xmm4,%xmm6
+ movsldup (%rcx),%xmm4
+ movupd %xmm4,%xmm6
+ movupd (%rcx),%xmm4
+ movups %xmm4,%xmm6
+ movups (%rcx),%xmm4
+ pabsb %xmm4,%xmm6
+ pabsb (%rcx),%xmm4
+ pabsw %xmm4,%xmm6
+ pabsw (%rcx),%xmm4
+ pabsd %xmm4,%xmm6
+ pabsd (%rcx),%xmm4
+ phminposuw %xmm4,%xmm6
+ phminposuw (%rcx),%xmm4
+ ptest %xmm4,%xmm6
+ ptest (%rcx),%xmm4
+ rcpps %xmm4,%xmm6
+ rcpps (%rcx),%xmm4
+ rsqrtps %xmm4,%xmm6
+ rsqrtps (%rcx),%xmm4
+ sqrtpd %xmm4,%xmm6
+ sqrtpd (%rcx),%xmm4
+ sqrtps %xmm4,%xmm6
+ sqrtps (%rcx),%xmm4
+ aesimc %xmm4,%xmm6
+ aesimc (%rcx),%xmm4
+
+# Tests for op xmm, xmm/mem128
+ movapd %xmm4,%xmm6
+ movapd %xmm4,(%rcx)
+ movaps %xmm4,%xmm6
+ movaps %xmm4,(%rcx)
+ movdqa %xmm4,%xmm6
+ movdqa %xmm4,(%rcx)
+ movdqu %xmm4,%xmm6
+ movdqu %xmm4,(%rcx)
+ movupd %xmm4,%xmm6
+ movupd %xmm4,(%rcx)
+ movups %xmm4,%xmm6
+ movups %xmm4,(%rcx)
+
+# Tests for op mem128, xmm
+ lddqu (%rcx),%xmm4
+ movntdqa (%rcx),%xmm4
+
+# Tests for op xmm, mem128
+ movntdq %xmm4,(%rcx)
+ movntpd %xmm4,(%rcx)
+ movntps %xmm4,(%rcx)
+
+# Tests for op xmm/mem128, xmm[, xmm]
+ addpd %xmm4,%xmm6
+ addpd (%rcx),%xmm6
+ addps %xmm4,%xmm6
+ addps (%rcx),%xmm6
+ addsubpd %xmm4,%xmm6
+ addsubpd (%rcx),%xmm6
+ addsubps %xmm4,%xmm6
+ addsubps (%rcx),%xmm6
+ andnpd %xmm4,%xmm6
+ andnpd (%rcx),%xmm6
+ andnps %xmm4,%xmm6
+ andnps (%rcx),%xmm6
+ andpd %xmm4,%xmm6
+ andpd (%rcx),%xmm6
+ andps %xmm4,%xmm6
+ andps (%rcx),%xmm6
+ divpd %xmm4,%xmm6
+ divpd (%rcx),%xmm6
+ divps %xmm4,%xmm6
+ divps (%rcx),%xmm6
+ haddpd %xmm4,%xmm6
+ haddpd (%rcx),%xmm6
+ haddps %xmm4,%xmm6
+ haddps (%rcx),%xmm6
+ hsubpd %xmm4,%xmm6
+ hsubpd (%rcx),%xmm6
+ hsubps %xmm4,%xmm6
+ hsubps (%rcx),%xmm6
+ maxpd %xmm4,%xmm6
+ maxpd (%rcx),%xmm6
+ maxps %xmm4,%xmm6
+ maxps (%rcx),%xmm6
+ minpd %xmm4,%xmm6
+ minpd (%rcx),%xmm6
+ minps %xmm4,%xmm6
+ minps (%rcx),%xmm6
+ mulpd %xmm4,%xmm6
+ mulpd (%rcx),%xmm6
+ mulps %xmm4,%xmm6
+ mulps (%rcx),%xmm6
+ orpd %xmm4,%xmm6
+ orpd (%rcx),%xmm6
+ orps %xmm4,%xmm6
+ orps (%rcx),%xmm6
+ packsswb %xmm4,%xmm6
+ packsswb (%rcx),%xmm6
+ packssdw %xmm4,%xmm6
+ packssdw (%rcx),%xmm6
+ packuswb %xmm4,%xmm6
+ packuswb (%rcx),%xmm6
+ packusdw %xmm4,%xmm6
+ packusdw (%rcx),%xmm6
+ paddb %xmm4,%xmm6
+ paddb (%rcx),%xmm6
+ paddw %xmm4,%xmm6
+ paddw (%rcx),%xmm6
+ paddd %xmm4,%xmm6
+ paddd (%rcx),%xmm6
+ paddq %xmm4,%xmm6
+ paddq (%rcx),%xmm6
+ paddsb %xmm4,%xmm6
+ paddsb (%rcx),%xmm6
+ paddsw %xmm4,%xmm6
+ paddsw (%rcx),%xmm6
+ paddusb %xmm4,%xmm6
+ paddusb (%rcx),%xmm6
+ paddusw %xmm4,%xmm6
+ paddusw (%rcx),%xmm6
+ pand %xmm4,%xmm6
+ pand (%rcx),%xmm6
+ pandn %xmm4,%xmm6
+ pandn (%rcx),%xmm6
+ pavgb %xmm4,%xmm6
+ pavgb (%rcx),%xmm6
+ pavgw %xmm4,%xmm6
+ pavgw (%rcx),%xmm6
+ pclmullqlqdq %xmm4,%xmm6
+ pclmullqlqdq (%rcx),%xmm6
+ pclmulhqlqdq %xmm4,%xmm6
+ pclmulhqlqdq (%rcx),%xmm6
+ pclmullqhqdq %xmm4,%xmm6
+ pclmullqhqdq (%rcx),%xmm6
+ pclmulhqhqdq %xmm4,%xmm6
+ pclmulhqhqdq (%rcx),%xmm6
+ pcmpeqb %xmm4,%xmm6
+ pcmpeqb (%rcx),%xmm6
+ pcmpeqw %xmm4,%xmm6
+ pcmpeqw (%rcx),%xmm6
+ pcmpeqd %xmm4,%xmm6
+ pcmpeqd (%rcx),%xmm6
+ pcmpeqq %xmm4,%xmm6
+ pcmpeqq (%rcx),%xmm6
+ pcmpgtb %xmm4,%xmm6
+ pcmpgtb (%rcx),%xmm6
+ pcmpgtw %xmm4,%xmm6
+ pcmpgtw (%rcx),%xmm6
+ pcmpgtd %xmm4,%xmm6
+ pcmpgtd (%rcx),%xmm6
+ pcmpgtq %xmm4,%xmm6
+ pcmpgtq (%rcx),%xmm6
+ phaddw %xmm4,%xmm6
+ phaddw (%rcx),%xmm6
+ phaddd %xmm4,%xmm6
+ phaddd (%rcx),%xmm6
+ phaddsw %xmm4,%xmm6
+ phaddsw (%rcx),%xmm6
+ phsubw %xmm4,%xmm6
+ phsubw (%rcx),%xmm6
+ phsubd %xmm4,%xmm6
+ phsubd (%rcx),%xmm6
+ phsubsw %xmm4,%xmm6
+ phsubsw (%rcx),%xmm6
+ pmaddwd %xmm4,%xmm6
+ pmaddwd (%rcx),%xmm6
+ pmaddubsw %xmm4,%xmm6
+ pmaddubsw (%rcx),%xmm6
+ pmaxsb %xmm4,%xmm6
+ pmaxsb (%rcx),%xmm6
+ pmaxsw %xmm4,%xmm6
+ pmaxsw (%rcx),%xmm6
+ pmaxsd %xmm4,%xmm6
+ pmaxsd (%rcx),%xmm6
+ pmaxub %xmm4,%xmm6
+ pmaxub (%rcx),%xmm6
+ pmaxuw %xmm4,%xmm6
+ pmaxuw (%rcx),%xmm6
+ pmaxud %xmm4,%xmm6
+ pmaxud (%rcx),%xmm6
+ pminsb %xmm4,%xmm6
+ pminsb (%rcx),%xmm6
+ pminsw %xmm4,%xmm6
+ pminsw (%rcx),%xmm6
+ pminsd %xmm4,%xmm6
+ pminsd (%rcx),%xmm6
+ pminub %xmm4,%xmm6
+ pminub (%rcx),%xmm6
+ pminuw %xmm4,%xmm6
+ pminuw (%rcx),%xmm6
+ pminud %xmm4,%xmm6
+ pminud (%rcx),%xmm6
+ pmulhuw %xmm4,%xmm6
+ pmulhuw (%rcx),%xmm6
+ pmulhrsw %xmm4,%xmm6
+ pmulhrsw (%rcx),%xmm6
+ pmulhw %xmm4,%xmm6
+ pmulhw (%rcx),%xmm6
+ pmullw %xmm4,%xmm6
+ pmullw (%rcx),%xmm6
+ pmulld %xmm4,%xmm6
+ pmulld (%rcx),%xmm6
+ pmuludq %xmm4,%xmm6
+ pmuludq (%rcx),%xmm6
+ pmuldq %xmm4,%xmm6
+ pmuldq (%rcx),%xmm6
+ por %xmm4,%xmm6
+ por (%rcx),%xmm6
+ psadbw %xmm4,%xmm6
+ psadbw (%rcx),%xmm6
+ pshufb %xmm4,%xmm6
+ pshufb (%rcx),%xmm6
+ psignb %xmm4,%xmm6
+ psignb (%rcx),%xmm6
+ psignw %xmm4,%xmm6
+ psignw (%rcx),%xmm6
+ psignd %xmm4,%xmm6
+ psignd (%rcx),%xmm6
+ psllw %xmm4,%xmm6
+ psllw (%rcx),%xmm6
+ pslld %xmm4,%xmm6
+ pslld (%rcx),%xmm6
+ psllq %xmm4,%xmm6
+ psllq (%rcx),%xmm6
+ psraw %xmm4,%xmm6
+ psraw (%rcx),%xmm6
+ psrad %xmm4,%xmm6
+ psrad (%rcx),%xmm6
+ psrlw %xmm4,%xmm6
+ psrlw (%rcx),%xmm6
+ psrld %xmm4,%xmm6
+ psrld (%rcx),%xmm6
+ psrlq %xmm4,%xmm6
+ psrlq (%rcx),%xmm6
+ psubb %xmm4,%xmm6
+ psubb (%rcx),%xmm6
+ psubw %xmm4,%xmm6
+ psubw (%rcx),%xmm6
+ psubd %xmm4,%xmm6
+ psubd (%rcx),%xmm6
+ psubq %xmm4,%xmm6
+ psubq (%rcx),%xmm6
+ psubsb %xmm4,%xmm6
+ psubsb (%rcx),%xmm6
+ psubsw %xmm4,%xmm6
+ psubsw (%rcx),%xmm6
+ psubusb %xmm4,%xmm6
+ psubusb (%rcx),%xmm6
+ psubusw %xmm4,%xmm6
+ psubusw (%rcx),%xmm6
+ punpckhbw %xmm4,%xmm6
+ punpckhbw (%rcx),%xmm6
+ punpckhwd %xmm4,%xmm6
+ punpckhwd (%rcx),%xmm6
+ punpckhdq %xmm4,%xmm6
+ punpckhdq (%rcx),%xmm6
+ punpckhqdq %xmm4,%xmm6
+ punpckhqdq (%rcx),%xmm6
+ punpcklbw %xmm4,%xmm6
+ punpcklbw (%rcx),%xmm6
+ punpcklwd %xmm4,%xmm6
+ punpcklwd (%rcx),%xmm6
+ punpckldq %xmm4,%xmm6
+ punpckldq (%rcx),%xmm6
+ punpcklqdq %xmm4,%xmm6
+ punpcklqdq (%rcx),%xmm6
+ pxor %xmm4,%xmm6
+ pxor (%rcx),%xmm6
+ subpd %xmm4,%xmm6
+ subpd (%rcx),%xmm6
+ subps %xmm4,%xmm6
+ subps (%rcx),%xmm6
+ unpckhpd %xmm4,%xmm6
+ unpckhpd (%rcx),%xmm6
+ unpckhps %xmm4,%xmm6
+ unpckhps (%rcx),%xmm6
+ unpcklpd %xmm4,%xmm6
+ unpcklpd (%rcx),%xmm6
+ unpcklps %xmm4,%xmm6
+ unpcklps (%rcx),%xmm6
+ xorpd %xmm4,%xmm6
+ xorpd (%rcx),%xmm6
+ xorps %xmm4,%xmm6
+ xorps (%rcx),%xmm6
+ aesenc %xmm4,%xmm6
+ aesenc (%rcx),%xmm6
+ aesenclast %xmm4,%xmm6
+ aesenclast (%rcx),%xmm6
+ aesdec %xmm4,%xmm6
+ aesdec (%rcx),%xmm6
+ aesdeclast %xmm4,%xmm6
+ aesdeclast (%rcx),%xmm6
+ cmpeqpd %xmm4,%xmm6
+ cmpeqpd (%rcx),%xmm6
+ cmpeqps %xmm4,%xmm6
+ cmpeqps (%rcx),%xmm6
+ cmpltpd %xmm4,%xmm6
+ cmpltpd (%rcx),%xmm6
+ cmpltps %xmm4,%xmm6
+ cmpltps (%rcx),%xmm6
+ cmplepd %xmm4,%xmm6
+ cmplepd (%rcx),%xmm6
+ cmpleps %xmm4,%xmm6
+ cmpleps (%rcx),%xmm6
+ cmpunordpd %xmm4,%xmm6
+ cmpunordpd (%rcx),%xmm6
+ cmpunordps %xmm4,%xmm6
+ cmpunordps (%rcx),%xmm6
+ cmpneqpd %xmm4,%xmm6
+ cmpneqpd (%rcx),%xmm6
+ cmpneqps %xmm4,%xmm6
+ cmpneqps (%rcx),%xmm6
+ cmpnltpd %xmm4,%xmm6
+ cmpnltpd (%rcx),%xmm6
+ cmpnltps %xmm4,%xmm6
+ cmpnltps (%rcx),%xmm6
+ cmpnlepd %xmm4,%xmm6
+ cmpnlepd (%rcx),%xmm6
+ cmpnleps %xmm4,%xmm6
+ cmpnleps (%rcx),%xmm6
+ cmpordpd %xmm4,%xmm6
+ cmpordpd (%rcx),%xmm6
+ cmpordps %xmm4,%xmm6
+ cmpordps (%rcx),%xmm6
+
+# Tests for op imm8, xmm/mem128, xmm
+ aeskeygenassist $100,%xmm4,%xmm6
+ aeskeygenassist $100,(%rcx),%xmm6
+ pcmpestri $100,%xmm4,%xmm6
+ pcmpestri $100,(%rcx),%xmm6
+ pcmpestrm $100,%xmm4,%xmm6
+ pcmpestrm $100,(%rcx),%xmm6
+ pcmpistri $100,%xmm4,%xmm6
+ pcmpistri $100,(%rcx),%xmm6
+ pcmpistrm $100,%xmm4,%xmm6
+ pcmpistrm $100,(%rcx),%xmm6
+ pshufd $100,%xmm4,%xmm6
+ pshufd $100,(%rcx),%xmm6
+ pshufhw $100,%xmm4,%xmm6
+ pshufhw $100,(%rcx),%xmm6
+ pshuflw $100,%xmm4,%xmm6
+ pshuflw $100,(%rcx),%xmm6
+ roundpd $100,%xmm4,%xmm6
+ roundpd $100,(%rcx),%xmm6
+ roundps $100,%xmm4,%xmm6
+ roundps $100,(%rcx),%xmm6
+
+# Tests for op imm8, xmm/mem128, xmm[, xmm]
+ blendpd $100,%xmm4,%xmm6
+ blendpd $100,(%rcx),%xmm6
+ blendps $100,%xmm4,%xmm6
+ blendps $100,(%rcx),%xmm6
+ cmppd $100,%xmm4,%xmm6
+ cmppd $100,(%rcx),%xmm6
+ cmpps $100,%xmm4,%xmm6
+ cmpps $100,(%rcx),%xmm6
+ dppd $100,%xmm4,%xmm6
+ dppd $100,(%rcx),%xmm6
+ dpps $100,%xmm4,%xmm6
+ dpps $100,(%rcx),%xmm6
+ mpsadbw $100,%xmm4,%xmm6
+ mpsadbw $100,(%rcx),%xmm6
+ palignr $100,%xmm4,%xmm6
+ palignr $100,(%rcx),%xmm6
+ pblendw $100,%xmm4,%xmm6
+ pblendw $100,(%rcx),%xmm6
+ pclmulqdq $100,%xmm4,%xmm6
+ pclmulqdq $100,(%rcx),%xmm6
+ shufpd $100,%xmm4,%xmm6
+ shufpd $100,(%rcx),%xmm6
+ shufps $100,%xmm4,%xmm6
+ shufps $100,(%rcx),%xmm6
+
+# Tests for op xmm0, xmm/mem128, xmm[, xmm]
+ blendvpd %xmm0,%xmm4,%xmm6
+ blendvpd %xmm0,(%rcx),%xmm6
+ blendvpd %xmm4,%xmm6
+ blendvpd (%rcx),%xmm6
+ blendvps %xmm0,%xmm4,%xmm6
+ blendvps %xmm0,(%rcx),%xmm6
+ blendvps %xmm4,%xmm6
+ blendvps (%rcx),%xmm6
+ pblendvb %xmm0,%xmm4,%xmm6
+ pblendvb %xmm0,(%rcx),%xmm6
+ pblendvb %xmm4,%xmm6
+ pblendvb (%rcx),%xmm6
+
+# Tests for op xmm/mem64, xmm
+ comisd %xmm4,%xmm6
+ comisd (%rcx),%xmm4
+ cvtdq2pd %xmm4,%xmm6
+ cvtdq2pd (%rcx),%xmm4
+ cvtps2pd %xmm4,%xmm6
+ cvtps2pd (%rcx),%xmm4
+ movddup %xmm4,%xmm6
+ movddup (%rcx),%xmm4
+ pmovsxbw %xmm4,%xmm6
+ pmovsxbw (%rcx),%xmm4
+ pmovsxwd %xmm4,%xmm6
+ pmovsxwd (%rcx),%xmm4
+ pmovsxdq %xmm4,%xmm6
+ pmovsxdq (%rcx),%xmm4
+ pmovzxbw %xmm4,%xmm6
+ pmovzxbw (%rcx),%xmm4
+ pmovzxwd %xmm4,%xmm6
+ pmovzxwd (%rcx),%xmm4
+ pmovzxdq %xmm4,%xmm6
+ pmovzxdq (%rcx),%xmm4
+ ucomisd %xmm4,%xmm6
+ ucomisd (%rcx),%xmm4
+
+# Tests for op mem64, xmm
+ movsd (%rcx),%xmm4
+
+# Tests for op xmm, mem64
+ movlpd %xmm4,(%rcx)
+ movlps %xmm4,(%rcx)
+ movhpd %xmm4,(%rcx)
+ movhps %xmm4,(%rcx)
+ movsd %xmm4,(%rcx)
+
+# Tests for op xmm, regq/mem64
+# Tests for op regq/mem64, xmm
+ movd %xmm4,%rcx
+ movd %rcx,%xmm4
+ movq %xmm4,%rcx
+ movq %rcx,%xmm4
+ movq %xmm4,(%rcx)
+ movq (%rcx),%xmm4
+
+# Tests for op xmm/mem64, regl
+ cvtsd2si %xmm4,%ecx
+ cvtsd2si (%rcx),%ecx
+ cvttsd2si %xmm4,%ecx
+ cvttsd2si (%rcx),%ecx
+
+# Tests for op xmm/mem64, regq
+ cvtsd2si %xmm4,%rcx
+ cvtsd2si (%rcx),%rcx
+ cvttsd2si %xmm4,%rcx
+ cvttsd2si (%rcx),%rcx
+
+# Tests for op regq/mem64, xmm[, xmm]
+ cvtsi2sdq %rcx,%xmm4
+ cvtsi2sdq (%rcx),%xmm4
+ cvtsi2ssq %rcx,%xmm4
+ cvtsi2ssq (%rcx),%xmm4
+
+# Tests for op imm8, regq/mem64, xmm[, xmm]
+ pinsrq $100,%rcx,%xmm4
+ pinsrq $100,(%rcx),%xmm4
+
+# Testsf for op imm8, xmm, regq/mem64
+ pextrq $100,%xmm4,%rcx
+ pextrq $100,%xmm4,(%rcx)
+
+# Tests for op mem64, xmm[, xmm]
+ movlpd (%rcx),%xmm4
+ movlps (%rcx),%xmm4
+ movhpd (%rcx),%xmm4
+ movhps (%rcx),%xmm4
+
+# Tests for op imm8, xmm/mem64, xmm[, xmm]
+ cmpsd $100,%xmm4,%xmm6
+ cmpsd $100,(%rcx),%xmm6
+ roundsd $100,%xmm4,%xmm6
+ roundsd $100,(%rcx),%xmm6
+
+# Tests for op xmm/mem64, xmm[, xmm]
+ addsd %xmm4,%xmm6
+ addsd (%rcx),%xmm6
+ cvtsd2ss %xmm4,%xmm6
+ cvtsd2ss (%rcx),%xmm6
+ divsd %xmm4,%xmm6
+ divsd (%rcx),%xmm6
+ maxsd %xmm4,%xmm6
+ maxsd (%rcx),%xmm6
+ minsd %xmm4,%xmm6
+ minsd (%rcx),%xmm6
+ mulsd %xmm4,%xmm6
+ mulsd (%rcx),%xmm6
+ sqrtsd %xmm4,%xmm6
+ sqrtsd (%rcx),%xmm6
+ subsd %xmm4,%xmm6
+ subsd (%rcx),%xmm6
+ cmpeqsd %xmm4,%xmm6
+ cmpeqsd (%rcx),%xmm6
+ cmpltsd %xmm4,%xmm6
+ cmpltsd (%rcx),%xmm6
+ cmplesd %xmm4,%xmm6
+ cmplesd (%rcx),%xmm6
+ cmpunordsd %xmm4,%xmm6
+ cmpunordsd (%rcx),%xmm6
+ cmpneqsd %xmm4,%xmm6
+ cmpneqsd (%rcx),%xmm6
+ cmpnltsd %xmm4,%xmm6
+ cmpnltsd (%rcx),%xmm6
+ cmpnlesd %xmm4,%xmm6
+ cmpnlesd (%rcx),%xmm6
+ cmpordsd %xmm4,%xmm6
+ cmpordsd (%rcx),%xmm6
+
+# Tests for op xmm/mem32, xmm[, xmm]
+ addss %xmm4,%xmm6
+ addss (%rcx),%xmm6
+ cvtss2sd %xmm4,%xmm6
+ cvtss2sd (%rcx),%xmm6
+ divss %xmm4,%xmm6
+ divss (%rcx),%xmm6
+ maxss %xmm4,%xmm6
+ maxss (%rcx),%xmm6
+ minss %xmm4,%xmm6
+ minss (%rcx),%xmm6
+ mulss %xmm4,%xmm6
+ mulss (%rcx),%xmm6
+ rcpss %xmm4,%xmm6
+ rcpss (%rcx),%xmm6
+ rsqrtss %xmm4,%xmm6
+ rsqrtss (%rcx),%xmm6
+ sqrtss %xmm4,%xmm6
+ sqrtss (%rcx),%xmm6
+ subss %xmm4,%xmm6
+ subss (%rcx),%xmm6
+ cmpeqss %xmm4,%xmm6
+ cmpeqss (%rcx),%xmm6
+ cmpltss %xmm4,%xmm6
+ cmpltss (%rcx),%xmm6
+ cmpless %xmm4,%xmm6
+ cmpless (%rcx),%xmm6
+ cmpunordss %xmm4,%xmm6
+ cmpunordss (%rcx),%xmm6
+ cmpneqss %xmm4,%xmm6
+ cmpneqss (%rcx),%xmm6
+ cmpnltss %xmm4,%xmm6
+ cmpnltss (%rcx),%xmm6
+ cmpnless %xmm4,%xmm6
+ cmpnless (%rcx),%xmm6
+ cmpordss %xmm4,%xmm6
+ cmpordss (%rcx),%xmm6
+
+# Tests for op xmm/mem32, xmm
+ comiss %xmm4,%xmm6
+ comiss (%rcx),%xmm4
+ pmovsxbd %xmm4,%xmm6
+ pmovsxbd (%rcx),%xmm4
+ pmovsxwq %xmm4,%xmm6
+ pmovsxwq (%rcx),%xmm4
+ pmovzxbd %xmm4,%xmm6
+ pmovzxbd (%rcx),%xmm4
+ pmovzxwq %xmm4,%xmm6
+ pmovzxwq (%rcx),%xmm4
+ ucomiss %xmm4,%xmm6
+ ucomiss (%rcx),%xmm4
+
+# Tests for op mem32, xmm
+ movss (%rcx),%xmm4
+
+# Tests for op xmm, mem32
+ movss %xmm4,(%rcx)
+
+# Tests for op xmm, regl/mem32
+# Tests for op regl/mem32, xmm
+ movd %xmm4,%ecx
+ movd %xmm4,(%rcx)
+ movd %ecx,%xmm4
+ movd (%rcx),%xmm4
+
+# Tests for op xmm/mem32, regl
+ cvtss2si %xmm4,%ecx
+ cvtss2si (%rcx),%ecx
+ cvttss2si %xmm4,%ecx
+ cvttss2si (%rcx),%ecx
+
+# Tests for op xmm/mem32, regq
+ cvtss2si %xmm4,%rcx
+ cvtss2si (%rcx),%rcx
+ cvttss2si %xmm4,%rcx
+ cvttss2si (%rcx),%rcx
+
+# Tests for op xmm, regq
+ movmskpd %xmm4,%rcx
+ movmskps %xmm4,%rcx
+ pmovmskb %xmm4,%rcx
+
+# Tests for op imm8, xmm, regq/mem32
+ extractps $100,%xmm4,%rcx
+ extractps $100,%xmm4,(%rcx)
+# Tests for op imm8, xmm, regl/mem32
+ pextrd $100,%xmm4,%ecx
+ pextrd $100,%xmm4,(%rcx)
+ extractps $100,%xmm4,%ecx
+ extractps $100,%xmm4,(%rcx)
+
+# Tests for op regl/mem32, xmm[, xmm]
+ cvtsi2sd %ecx,%xmm4
+ cvtsi2sd (%rcx),%xmm4
+ cvtsi2ss %ecx,%xmm4
+ cvtsi2ss (%rcx),%xmm4
+
+# Tests for op imm8, xmm/mem32, xmm[, xmm]
+ cmpss $100,%xmm4,%xmm6
+ cmpss $100,(%rcx),%xmm6
+ insertps $100,%xmm4,%xmm6
+ insertps $100,(%rcx),%xmm6
+ roundss $100,%xmm4,%xmm6
+ roundss $100,(%rcx),%xmm6
+
+# Tests for op xmm/m16, xmm
+ pmovsxbq %xmm4,%xmm6
+ pmovsxbq (%rcx),%xmm4
+ pmovzxbq %xmm4,%xmm6
+ pmovzxbq (%rcx),%xmm4
+
+# Tests for op imm8, xmm, regl/mem16
+ pextrw $100,%xmm4,%ecx
+ pextrw $100,%xmm4,(%rcx)
+
+# Tests for op imm8, xmm, regq/mem16
+ pextrw $100,%xmm4,%rcx
+ pextrw $100,%xmm4,(%rcx)
+
+# Tests for op imm8, regl/mem16, xmm[, xmm]
+ pinsrw $100,%ecx,%xmm4
+ pinsrw $100,(%rcx),%xmm4
+
+
+ pinsrw $100,%rcx,%xmm4
+ pinsrw $100,(%rcx),%xmm4
+
+# Tests for op imm8, xmm, regl/mem8
+ pextrb $100,%xmm4,%ecx
+ pextrb $100,%xmm4,(%rcx)
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+ pinsrb $100,%ecx,%xmm4
+ pinsrb $100,(%rcx),%xmm4
+
+# Tests for op imm8, xmm, regq
+ pextrw $100,%xmm4,%rcx
+# Tests for op imm8, xmm, regq/mem8
+ pextrb $100,%xmm4,%rcx
+ pextrb $100,%xmm4,(%rcx)
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+ pinsrb $100,%ecx,%xmm4
+ pinsrb $100,(%rcx),%xmm4
+
+# Tests for op xmm, xmm
+ maskmovdqu %xmm4,%xmm6
+ movq %xmm4,%xmm6
+
+# Tests for op xmm, regl
+ movmskpd %xmm4,%ecx
+ movmskps %xmm4,%ecx
+ pmovmskb %xmm4,%ecx
+# Tests for op xmm, xmm[, xmm]
+ movhlps %xmm4,%xmm6
+ movlhps %xmm4,%xmm6
+ movsd %xmm4,%xmm6
+ movss %xmm4,%xmm6
+
+# Tests for op imm8, xmm[, xmm]
+ pslld $100,%xmm4
+ pslldq $100,%xmm4
+ psllq $100,%xmm4
+ psllw $100,%xmm4
+ psrad $100,%xmm4
+ psraw $100,%xmm4
+ psrld $100,%xmm4
+ psrldq $100,%xmm4
+ psrlq $100,%xmm4
+ psrlw $100,%xmm4
+
+# Tests for op imm8, xmm, regl
+ pextrw $100,%xmm4,%ecx
+
+
+ .intel_syntax noprefix
+# Tests for op mem64
+ ldmxcsr DWORD PTR [rcx]
+ stmxcsr DWORD PTR [rcx]
+
+# Tests for op xmm/mem128, xmm
+ cvtdq2ps xmm6,xmm4
+ cvtdq2ps xmm4,XMMWORD PTR [rcx]
+ cvtpd2dq xmm6,xmm4
+ cvtpd2dq xmm4,XMMWORD PTR [rcx]
+ cvtpd2ps xmm6,xmm4
+ cvtpd2ps xmm4,XMMWORD PTR [rcx]
+ cvtps2dq xmm6,xmm4
+ cvtps2dq xmm4,XMMWORD PTR [rcx]
+ cvttpd2dq xmm6,xmm4
+ cvttpd2dq xmm4,XMMWORD PTR [rcx]
+ cvttps2dq xmm6,xmm4
+ cvttps2dq xmm4,XMMWORD PTR [rcx]
+ movapd xmm6,xmm4
+ movapd xmm4,XMMWORD PTR [rcx]
+ movaps xmm6,xmm4
+ movaps xmm4,XMMWORD PTR [rcx]
+ movdqa xmm6,xmm4
+ movdqa xmm4,XMMWORD PTR [rcx]
+ movdqu xmm6,xmm4
+ movdqu xmm4,XMMWORD PTR [rcx]
+ movshdup xmm6,xmm4
+ movshdup xmm4,XMMWORD PTR [rcx]
+ movsldup xmm6,xmm4
+ movsldup xmm4,XMMWORD PTR [rcx]
+ movupd xmm6,xmm4
+ movupd xmm4,XMMWORD PTR [rcx]
+ movups xmm6,xmm4
+ movups xmm4,XMMWORD PTR [rcx]
+ pabsb xmm6,xmm4
+ pabsb xmm4,XMMWORD PTR [rcx]
+ pabsw xmm6,xmm4
+ pabsw xmm4,XMMWORD PTR [rcx]
+ pabsd xmm6,xmm4
+ pabsd xmm4,XMMWORD PTR [rcx]
+ phminposuw xmm6,xmm4
+ phminposuw xmm4,XMMWORD PTR [rcx]
+ ptest xmm6,xmm4
+ ptest xmm4,XMMWORD PTR [rcx]
+ rcpps xmm6,xmm4
+ rcpps xmm4,XMMWORD PTR [rcx]
+ rsqrtps xmm6,xmm4
+ rsqrtps xmm4,XMMWORD PTR [rcx]
+ sqrtpd xmm6,xmm4
+ sqrtpd xmm4,XMMWORD PTR [rcx]
+ sqrtps xmm6,xmm4
+ sqrtps xmm4,XMMWORD PTR [rcx]
+ aesimc xmm6,xmm4
+ aesimc xmm4,XMMWORD PTR [rcx]
+
+# Tests for op xmm, xmm/mem128
+ movapd xmm6,xmm4
+ movapd XMMWORD PTR [rcx],xmm4
+ movaps xmm6,xmm4
+ movaps XMMWORD PTR [rcx],xmm4
+ movdqa xmm6,xmm4
+ movdqa XMMWORD PTR [rcx],xmm4
+ movdqu xmm6,xmm4
+ movdqu XMMWORD PTR [rcx],xmm4
+ movupd xmm6,xmm4
+ movupd XMMWORD PTR [rcx],xmm4
+ movups xmm6,xmm4
+ movups XMMWORD PTR [rcx],xmm4
+
+# Tests for op mem128, xmm
+ lddqu xmm4,XMMWORD PTR [rcx]
+ movntdqa xmm4,XMMWORD PTR [rcx]
+
+# Tests for op xmm, mem128
+ movntdq XMMWORD PTR [rcx],xmm4
+ movntpd XMMWORD PTR [rcx],xmm4
+ movntps XMMWORD PTR [rcx],xmm4
+
+# Tests for op xmm/mem128, xmm[, xmm]
+ addpd xmm6,xmm4
+ addpd xmm6,XMMWORD PTR [rcx]
+ addps xmm6,xmm4
+ addps xmm6,XMMWORD PTR [rcx]
+ addsubpd xmm6,xmm4
+ addsubpd xmm6,XMMWORD PTR [rcx]
+ addsubps xmm6,xmm4
+ addsubps xmm6,XMMWORD PTR [rcx]
+ andnpd xmm6,xmm4
+ andnpd xmm6,XMMWORD PTR [rcx]
+ andnps xmm6,xmm4
+ andnps xmm6,XMMWORD PTR [rcx]
+ andpd xmm6,xmm4
+ andpd xmm6,XMMWORD PTR [rcx]
+ andps xmm6,xmm4
+ andps xmm6,XMMWORD PTR [rcx]
+ divpd xmm6,xmm4
+ divpd xmm6,XMMWORD PTR [rcx]
+ divps xmm6,xmm4
+ divps xmm6,XMMWORD PTR [rcx]
+ haddpd xmm6,xmm4
+ haddpd xmm6,XMMWORD PTR [rcx]
+ haddps xmm6,xmm4
+ haddps xmm6,XMMWORD PTR [rcx]
+ hsubpd xmm6,xmm4
+ hsubpd xmm6,XMMWORD PTR [rcx]
+ hsubps xmm6,xmm4
+ hsubps xmm6,XMMWORD PTR [rcx]
+ maxpd xmm6,xmm4
+ maxpd xmm6,XMMWORD PTR [rcx]
+ maxps xmm6,xmm4
+ maxps xmm6,XMMWORD PTR [rcx]
+ minpd xmm6,xmm4
+ minpd xmm6,XMMWORD PTR [rcx]
+ minps xmm6,xmm4
+ minps xmm6,XMMWORD PTR [rcx]
+ mulpd xmm6,xmm4
+ mulpd xmm6,XMMWORD PTR [rcx]
+ mulps xmm6,xmm4
+ mulps xmm6,XMMWORD PTR [rcx]
+ orpd xmm6,xmm4
+ orpd xmm6,XMMWORD PTR [rcx]
+ orps xmm6,xmm4
+ orps xmm6,XMMWORD PTR [rcx]
+ packsswb xmm6,xmm4
+ packsswb xmm6,XMMWORD PTR [rcx]
+ packssdw xmm6,xmm4
+ packssdw xmm6,XMMWORD PTR [rcx]
+ packuswb xmm6,xmm4
+ packuswb xmm6,XMMWORD PTR [rcx]
+ packusdw xmm6,xmm4
+ packusdw xmm6,XMMWORD PTR [rcx]
+ paddb xmm6,xmm4
+ paddb xmm6,XMMWORD PTR [rcx]
+ paddw xmm6,xmm4
+ paddw xmm6,XMMWORD PTR [rcx]
+ paddd xmm6,xmm4
+ paddd xmm6,XMMWORD PTR [rcx]
+ paddq xmm6,xmm4
+ paddq xmm6,XMMWORD PTR [rcx]
+ paddsb xmm6,xmm4
+ paddsb xmm6,XMMWORD PTR [rcx]
+ paddsw xmm6,xmm4
+ paddsw xmm6,XMMWORD PTR [rcx]
+ paddusb xmm6,xmm4
+ paddusb xmm6,XMMWORD PTR [rcx]
+ paddusw xmm6,xmm4
+ paddusw xmm6,XMMWORD PTR [rcx]
+ pand xmm6,xmm4
+ pand xmm6,XMMWORD PTR [rcx]
+ pandn xmm6,xmm4
+ pandn xmm6,XMMWORD PTR [rcx]
+ pavgb xmm6,xmm4
+ pavgb xmm6,XMMWORD PTR [rcx]
+ pavgw xmm6,xmm4
+ pavgw xmm6,XMMWORD PTR [rcx]
+ pclmullqlqdq xmm6,xmm4
+ pclmullqlqdq xmm6,XMMWORD PTR [rcx]
+ pclmulhqlqdq xmm6,xmm4
+ pclmulhqlqdq xmm6,XMMWORD PTR [rcx]
+ pclmullqhqdq xmm6,xmm4
+ pclmullqhqdq xmm6,XMMWORD PTR [rcx]
+ pclmulhqhqdq xmm6,xmm4
+ pclmulhqhqdq xmm6,XMMWORD PTR [rcx]
+ pcmpeqb xmm6,xmm4
+ pcmpeqb xmm6,XMMWORD PTR [rcx]
+ pcmpeqw xmm6,xmm4
+ pcmpeqw xmm6,XMMWORD PTR [rcx]
+ pcmpeqd xmm6,xmm4
+ pcmpeqd xmm6,XMMWORD PTR [rcx]
+ pcmpeqq xmm6,xmm4
+ pcmpeqq xmm6,XMMWORD PTR [rcx]
+ pcmpgtb xmm6,xmm4
+ pcmpgtb xmm6,XMMWORD PTR [rcx]
+ pcmpgtw xmm6,xmm4
+ pcmpgtw xmm6,XMMWORD PTR [rcx]
+ pcmpgtd xmm6,xmm4
+ pcmpgtd xmm6,XMMWORD PTR [rcx]
+ pcmpgtq xmm6,xmm4
+ pcmpgtq xmm6,XMMWORD PTR [rcx]
+ phaddw xmm6,xmm4
+ phaddw xmm6,XMMWORD PTR [rcx]
+ phaddd xmm6,xmm4
+ phaddd xmm6,XMMWORD PTR [rcx]
+ phaddsw xmm6,xmm4
+ phaddsw xmm6,XMMWORD PTR [rcx]
+ phsubw xmm6,xmm4
+ phsubw xmm6,XMMWORD PTR [rcx]
+ phsubd xmm6,xmm4
+ phsubd xmm6,XMMWORD PTR [rcx]
+ phsubsw xmm6,xmm4
+ phsubsw xmm6,XMMWORD PTR [rcx]
+ pmaddwd xmm6,xmm4
+ pmaddwd xmm6,XMMWORD PTR [rcx]
+ pmaddubsw xmm6,xmm4
+ pmaddubsw xmm6,XMMWORD PTR [rcx]
+ pmaxsb xmm6,xmm4
+ pmaxsb xmm6,XMMWORD PTR [rcx]
+ pmaxsw xmm6,xmm4
+ pmaxsw xmm6,XMMWORD PTR [rcx]
+ pmaxsd xmm6,xmm4
+ pmaxsd xmm6,XMMWORD PTR [rcx]
+ pmaxub xmm6,xmm4
+ pmaxub xmm6,XMMWORD PTR [rcx]
+ pmaxuw xmm6,xmm4
+ pmaxuw xmm6,XMMWORD PTR [rcx]
+ pmaxud xmm6,xmm4
+ pmaxud xmm6,XMMWORD PTR [rcx]
+ pminsb xmm6,xmm4
+ pminsb xmm6,XMMWORD PTR [rcx]
+ pminsw xmm6,xmm4
+ pminsw xmm6,XMMWORD PTR [rcx]
+ pminsd xmm6,xmm4
+ pminsd xmm6,XMMWORD PTR [rcx]
+ pminub xmm6,xmm4
+ pminub xmm6,XMMWORD PTR [rcx]
+ pminuw xmm6,xmm4
+ pminuw xmm6,XMMWORD PTR [rcx]
+ pminud xmm6,xmm4
+ pminud xmm6,XMMWORD PTR [rcx]
+ pmulhuw xmm6,xmm4
+ pmulhuw xmm6,XMMWORD PTR [rcx]
+ pmulhrsw xmm6,xmm4
+ pmulhrsw xmm6,XMMWORD PTR [rcx]
+ pmulhw xmm6,xmm4
+ pmulhw xmm6,XMMWORD PTR [rcx]
+ pmullw xmm6,xmm4
+ pmullw xmm6,XMMWORD PTR [rcx]
+ pmulld xmm6,xmm4
+ pmulld xmm6,XMMWORD PTR [rcx]
+ pmuludq xmm6,xmm4
+ pmuludq xmm6,XMMWORD PTR [rcx]
+ pmuldq xmm6,xmm4
+ pmuldq xmm6,XMMWORD PTR [rcx]
+ por xmm6,xmm4
+ por xmm6,XMMWORD PTR [rcx]
+ psadbw xmm6,xmm4
+ psadbw xmm6,XMMWORD PTR [rcx]
+ pshufb xmm6,xmm4
+ pshufb xmm6,XMMWORD PTR [rcx]
+ psignb xmm6,xmm4
+ psignb xmm6,XMMWORD PTR [rcx]
+ psignw xmm6,xmm4
+ psignw xmm6,XMMWORD PTR [rcx]
+ psignd xmm6,xmm4
+ psignd xmm6,XMMWORD PTR [rcx]
+ psllw xmm6,xmm4
+ psllw xmm6,XMMWORD PTR [rcx]
+ pslld xmm6,xmm4
+ pslld xmm6,XMMWORD PTR [rcx]
+ psllq xmm6,xmm4
+ psllq xmm6,XMMWORD PTR [rcx]
+ psraw xmm6,xmm4
+ psraw xmm6,XMMWORD PTR [rcx]
+ psrad xmm6,xmm4
+ psrad xmm6,XMMWORD PTR [rcx]
+ psrlw xmm6,xmm4
+ psrlw xmm6,XMMWORD PTR [rcx]
+ psrld xmm6,xmm4
+ psrld xmm6,XMMWORD PTR [rcx]
+ psrlq xmm6,xmm4
+ psrlq xmm6,XMMWORD PTR [rcx]
+ psubb xmm6,xmm4
+ psubb xmm6,XMMWORD PTR [rcx]
+ psubw xmm6,xmm4
+ psubw xmm6,XMMWORD PTR [rcx]
+ psubd xmm6,xmm4
+ psubd xmm6,XMMWORD PTR [rcx]
+ psubq xmm6,xmm4
+ psubq xmm6,XMMWORD PTR [rcx]
+ psubsb xmm6,xmm4
+ psubsb xmm6,XMMWORD PTR [rcx]
+ psubsw xmm6,xmm4
+ psubsw xmm6,XMMWORD PTR [rcx]
+ psubusb xmm6,xmm4
+ psubusb xmm6,XMMWORD PTR [rcx]
+ psubusw xmm6,xmm4
+ psubusw xmm6,XMMWORD PTR [rcx]
+ punpckhbw xmm6,xmm4
+ punpckhbw xmm6,XMMWORD PTR [rcx]
+ punpckhwd xmm6,xmm4
+ punpckhwd xmm6,XMMWORD PTR [rcx]
+ punpckhdq xmm6,xmm4
+ punpckhdq xmm6,XMMWORD PTR [rcx]
+ punpckhqdq xmm6,xmm4
+ punpckhqdq xmm6,XMMWORD PTR [rcx]
+ punpcklbw xmm6,xmm4
+ punpcklbw xmm6,XMMWORD PTR [rcx]
+ punpcklwd xmm6,xmm4
+ punpcklwd xmm6,XMMWORD PTR [rcx]
+ punpckldq xmm6,xmm4
+ punpckldq xmm6,XMMWORD PTR [rcx]
+ punpcklqdq xmm6,xmm4
+ punpcklqdq xmm6,XMMWORD PTR [rcx]
+ pxor xmm6,xmm4
+ pxor xmm6,XMMWORD PTR [rcx]
+ subpd xmm6,xmm4
+ subpd xmm6,XMMWORD PTR [rcx]
+ subps xmm6,xmm4
+ subps xmm6,XMMWORD PTR [rcx]
+ unpckhpd xmm6,xmm4
+ unpckhpd xmm6,XMMWORD PTR [rcx]
+ unpckhps xmm6,xmm4
+ unpckhps xmm6,XMMWORD PTR [rcx]
+ unpcklpd xmm6,xmm4
+ unpcklpd xmm6,XMMWORD PTR [rcx]
+ unpcklps xmm6,xmm4
+ unpcklps xmm6,XMMWORD PTR [rcx]
+ xorpd xmm6,xmm4
+ xorpd xmm6,XMMWORD PTR [rcx]
+ xorps xmm6,xmm4
+ xorps xmm6,XMMWORD PTR [rcx]
+ aesenc xmm6,xmm4
+ aesenc xmm6,XMMWORD PTR [rcx]
+ aesenclast xmm6,xmm4
+ aesenclast xmm6,XMMWORD PTR [rcx]
+ aesdec xmm6,xmm4
+ aesdec xmm6,XMMWORD PTR [rcx]
+ aesdeclast xmm6,xmm4
+ aesdeclast xmm6,XMMWORD PTR [rcx]
+ cmpeqpd xmm6,xmm4
+ cmpeqpd xmm6,XMMWORD PTR [rcx]
+ cmpeqps xmm6,xmm4
+ cmpeqps xmm6,XMMWORD PTR [rcx]
+ cmpltpd xmm6,xmm4
+ cmpltpd xmm6,XMMWORD PTR [rcx]
+ cmpltps xmm6,xmm4
+ cmpltps xmm6,XMMWORD PTR [rcx]
+ cmplepd xmm6,xmm4
+ cmplepd xmm6,XMMWORD PTR [rcx]
+ cmpleps xmm6,xmm4
+ cmpleps xmm6,XMMWORD PTR [rcx]
+ cmpunordpd xmm6,xmm4
+ cmpunordpd xmm6,XMMWORD PTR [rcx]
+ cmpunordps xmm6,xmm4
+ cmpunordps xmm6,XMMWORD PTR [rcx]
+ cmpneqpd xmm6,xmm4
+ cmpneqpd xmm6,XMMWORD PTR [rcx]
+ cmpneqps xmm6,xmm4
+ cmpneqps xmm6,XMMWORD PTR [rcx]
+ cmpnltpd xmm6,xmm4
+ cmpnltpd xmm6,XMMWORD PTR [rcx]
+ cmpnltps xmm6,xmm4
+ cmpnltps xmm6,XMMWORD PTR [rcx]
+ cmpnlepd xmm6,xmm4
+ cmpnlepd xmm6,XMMWORD PTR [rcx]
+ cmpnleps xmm6,xmm4
+ cmpnleps xmm6,XMMWORD PTR [rcx]
+ cmpordpd xmm6,xmm4
+ cmpordpd xmm6,XMMWORD PTR [rcx]
+ cmpordps xmm6,xmm4
+ cmpordps xmm6,XMMWORD PTR [rcx]
+
+# Tests for op imm8, xmm/mem128, xmm
+ aeskeygenassist xmm6,xmm4,100
+ aeskeygenassist xmm6,XMMWORD PTR [rcx],100
+ pcmpestri xmm6,xmm4,100
+ pcmpestri xmm6,XMMWORD PTR [rcx],100
+ pcmpestrm xmm6,xmm4,100
+ pcmpestrm xmm6,XMMWORD PTR [rcx],100
+ pcmpistri xmm6,xmm4,100
+ pcmpistri xmm6,XMMWORD PTR [rcx],100
+ pcmpistrm xmm6,xmm4,100
+ pcmpistrm xmm6,XMMWORD PTR [rcx],100
+ pshufd xmm6,xmm4,100
+ pshufd xmm6,XMMWORD PTR [rcx],100
+ pshufhw xmm6,xmm4,100
+ pshufhw xmm6,XMMWORD PTR [rcx],100
+ pshuflw xmm6,xmm4,100
+ pshuflw xmm6,XMMWORD PTR [rcx],100
+ roundpd xmm6,xmm4,100
+ roundpd xmm6,XMMWORD PTR [rcx],100
+ roundps xmm6,xmm4,100
+ roundps xmm6,XMMWORD PTR [rcx],100
+
+# Tests for op imm8, xmm/mem128, xmm[, xmm]
+ blendpd xmm6,xmm4,100
+ blendpd xmm6,XMMWORD PTR [rcx],100
+ blendps xmm6,xmm4,100
+ blendps xmm6,XMMWORD PTR [rcx],100
+ cmppd xmm6,xmm4,100
+ cmppd xmm6,XMMWORD PTR [rcx],100
+ cmpps xmm6,xmm4,100
+ cmpps xmm6,XMMWORD PTR [rcx],100
+ dppd xmm6,xmm4,100
+ dppd xmm6,XMMWORD PTR [rcx],100
+ dpps xmm6,xmm4,100
+ dpps xmm6,XMMWORD PTR [rcx],100
+ mpsadbw xmm6,xmm4,100
+ mpsadbw xmm6,XMMWORD PTR [rcx],100
+ palignr xmm6,xmm4,100
+ palignr xmm6,XMMWORD PTR [rcx],100
+ pblendw xmm6,xmm4,100
+ pblendw xmm6,XMMWORD PTR [rcx],100
+ pclmulqdq xmm6,xmm4,100
+ pclmulqdq xmm6,XMMWORD PTR [rcx],100
+ shufpd xmm6,xmm4,100
+ shufpd xmm6,XMMWORD PTR [rcx],100
+ shufps xmm6,xmm4,100
+ shufps xmm6,XMMWORD PTR [rcx],100
+
+# Tests for op xmm0, xmm/mem128, xmm[, xmm]
+ blendvpd xmm6,xmm4,xmm0
+ blendvpd xmm6,XMMWORD PTR [rcx],xmm0
+ blendvpd xmm6,xmm4
+ blendvpd xmm6,XMMWORD PTR [rcx]
+ blendvps xmm6,xmm4,xmm0
+ blendvps xmm6,XMMWORD PTR [rcx],xmm0
+ blendvps xmm6,xmm4
+ blendvps xmm6,XMMWORD PTR [rcx]
+ pblendvb xmm6,xmm4,xmm0
+ pblendvb xmm6,XMMWORD PTR [rcx],xmm0
+ pblendvb xmm6,xmm4
+ pblendvb xmm6,XMMWORD PTR [rcx]
+
+# Tests for op xmm/mem64, xmm
+ comisd xmm6,xmm4
+ comisd xmm4,QWORD PTR [rcx]
+ cvtdq2pd xmm6,xmm4
+ cvtdq2pd xmm4,QWORD PTR [rcx]
+ cvtps2pd xmm6,xmm4
+ cvtps2pd xmm4,QWORD PTR [rcx]
+ movddup xmm6,xmm4
+ movddup xmm4,QWORD PTR [rcx]
+ pmovsxbw xmm6,xmm4
+ pmovsxbw xmm4,QWORD PTR [rcx]
+ pmovsxwd xmm6,xmm4
+ pmovsxwd xmm4,QWORD PTR [rcx]
+ pmovsxdq xmm6,xmm4
+ pmovsxdq xmm4,QWORD PTR [rcx]
+ pmovzxbw xmm6,xmm4
+ pmovzxbw xmm4,QWORD PTR [rcx]
+ pmovzxwd xmm6,xmm4
+ pmovzxwd xmm4,QWORD PTR [rcx]
+ pmovzxdq xmm6,xmm4
+ pmovzxdq xmm4,QWORD PTR [rcx]
+ ucomisd xmm6,xmm4
+ ucomisd xmm4,QWORD PTR [rcx]
+
+# Tests for op mem64, xmm
+ movsd xmm4,QWORD PTR [rcx]
+
+# Tests for op xmm, mem64
+ movlpd QWORD PTR [rcx],xmm4
+ movlps QWORD PTR [rcx],xmm4
+ movhpd QWORD PTR [rcx],xmm4
+ movhps QWORD PTR [rcx],xmm4
+ movsd QWORD PTR [rcx],xmm4
+
+# Tests for op xmm, regq/mem64
+# Tests for op regq/mem64, xmm
+ movd rcx,xmm4
+ movd xmm4,rcx
+ movq rcx,xmm4
+ movq xmm4,rcx
+ movq QWORD PTR [rcx],xmm4
+ movq xmm4,QWORD PTR [rcx]
+
+# Tests for op xmm/mem64, regl
+ cvtsd2si ecx,xmm4
+ cvtsd2si ecx,QWORD PTR [rcx]
+ cvttsd2si ecx,xmm4
+ cvttsd2si ecx,QWORD PTR [rcx]
+
+# Tests for op xmm/mem64, regq
+ cvtsd2si rcx,xmm4
+ cvtsd2si rcx,QWORD PTR [rcx]
+ cvttsd2si rcx,xmm4
+ cvttsd2si rcx,QWORD PTR [rcx]
+
+# Tests for op regq/mem64, xmm[, xmm]
+ cvtsi2sdq xmm4,rcx
+ cvtsi2sdq xmm4,QWORD PTR [rcx]
+ cvtsi2ssq xmm4,rcx
+ cvtsi2ssq xmm4,QWORD PTR [rcx]
+
+# Tests for op imm8, regq/mem64, xmm[, xmm]
+ pinsrq xmm4,rcx,100
+ pinsrq xmm4,QWORD PTR [rcx],100
+
+# Testsf for op imm8, xmm, regq/mem64
+ pextrq rcx,xmm4,100
+ pextrq QWORD PTR [rcx],xmm4,100
+
+# Tests for op mem64, xmm[, xmm]
+ movlpd xmm4,QWORD PTR [rcx]
+ movlps xmm4,QWORD PTR [rcx]
+ movhpd xmm4,QWORD PTR [rcx]
+ movhps xmm4,QWORD PTR [rcx]
+
+# Tests for op imm8, xmm/mem64, xmm[, xmm]
+ cmpsd xmm6,xmm4,100
+ cmpsd xmm6,QWORD PTR [rcx],100
+ roundsd xmm6,xmm4,100
+ roundsd xmm6,QWORD PTR [rcx],100
+
+# Tests for op xmm/mem64, xmm[, xmm]
+ addsd xmm6,xmm4
+ addsd xmm6,QWORD PTR [rcx]
+ cvtsd2ss xmm6,xmm4
+ cvtsd2ss xmm6,QWORD PTR [rcx]
+ divsd xmm6,xmm4
+ divsd xmm6,QWORD PTR [rcx]
+ maxsd xmm6,xmm4
+ maxsd xmm6,QWORD PTR [rcx]
+ minsd xmm6,xmm4
+ minsd xmm6,QWORD PTR [rcx]
+ mulsd xmm6,xmm4
+ mulsd xmm6,QWORD PTR [rcx]
+ sqrtsd xmm6,xmm4
+ sqrtsd xmm6,QWORD PTR [rcx]
+ subsd xmm6,xmm4
+ subsd xmm6,QWORD PTR [rcx]
+ cmpeqsd xmm6,xmm4
+ cmpeqsd xmm6,QWORD PTR [rcx]
+ cmpltsd xmm6,xmm4
+ cmpltsd xmm6,QWORD PTR [rcx]
+ cmplesd xmm6,xmm4
+ cmplesd xmm6,QWORD PTR [rcx]
+ cmpunordsd xmm6,xmm4
+ cmpunordsd xmm6,QWORD PTR [rcx]
+ cmpneqsd xmm6,xmm4
+ cmpneqsd xmm6,QWORD PTR [rcx]
+ cmpnltsd xmm6,xmm4
+ cmpnltsd xmm6,QWORD PTR [rcx]
+ cmpnlesd xmm6,xmm4
+ cmpnlesd xmm6,QWORD PTR [rcx]
+ cmpordsd xmm6,xmm4
+ cmpordsd xmm6,QWORD PTR [rcx]
+
+# Tests for op xmm/mem32, xmm[, xmm]
+ addss xmm6,xmm4
+ addss xmm6,DWORD PTR [rcx]
+ cvtss2sd xmm6,xmm4
+ cvtss2sd xmm6,DWORD PTR [rcx]
+ divss xmm6,xmm4
+ divss xmm6,DWORD PTR [rcx]
+ maxss xmm6,xmm4
+ maxss xmm6,DWORD PTR [rcx]
+ minss xmm6,xmm4
+ minss xmm6,DWORD PTR [rcx]
+ mulss xmm6,xmm4
+ mulss xmm6,DWORD PTR [rcx]
+ rcpss xmm6,xmm4
+ rcpss xmm6,DWORD PTR [rcx]
+ rsqrtss xmm6,xmm4
+ rsqrtss xmm6,DWORD PTR [rcx]
+ sqrtss xmm6,xmm4
+ sqrtss xmm6,DWORD PTR [rcx]
+ subss xmm6,xmm4
+ subss xmm6,DWORD PTR [rcx]
+ cmpeqss xmm6,xmm4
+ cmpeqss xmm6,DWORD PTR [rcx]
+ cmpltss xmm6,xmm4
+ cmpltss xmm6,DWORD PTR [rcx]
+ cmpless xmm6,xmm4
+ cmpless xmm6,DWORD PTR [rcx]
+ cmpunordss xmm6,xmm4
+ cmpunordss xmm6,DWORD PTR [rcx]
+ cmpneqss xmm6,xmm4
+ cmpneqss xmm6,DWORD PTR [rcx]
+ cmpnltss xmm6,xmm4
+ cmpnltss xmm6,DWORD PTR [rcx]
+ cmpnless xmm6,xmm4
+ cmpnless xmm6,DWORD PTR [rcx]
+ cmpordss xmm6,xmm4
+ cmpordss xmm6,DWORD PTR [rcx]
+
+# Tests for op xmm/mem32, xmm
+ comiss xmm6,xmm4
+ comiss xmm4,DWORD PTR [rcx]
+ pmovsxbd xmm6,xmm4
+ pmovsxbd xmm4,DWORD PTR [rcx]
+ pmovsxwq xmm6,xmm4
+ pmovsxwq xmm4,DWORD PTR [rcx]
+ pmovzxbd xmm6,xmm4
+ pmovzxbd xmm4,DWORD PTR [rcx]
+ pmovzxwq xmm6,xmm4
+ pmovzxwq xmm4,DWORD PTR [rcx]
+ ucomiss xmm6,xmm4
+ ucomiss xmm4,DWORD PTR [rcx]
+
+# Tests for op mem32, xmm
+ movss xmm4,DWORD PTR [rcx]
+
+# Tests for op xmm, mem32
+ movss DWORD PTR [rcx],xmm4
+
+# Tests for op xmm, regl/mem32
+# Tests for op regl/mem32, xmm
+ movd ecx,xmm4
+ movd DWORD PTR [rcx],xmm4
+ movd xmm4,ecx
+ movd xmm4,DWORD PTR [rcx]
+
+# Tests for op xmm/mem32, regl
+ cvtss2si ecx,xmm4
+ cvtss2si ecx,DWORD PTR [rcx]
+ cvttss2si ecx,xmm4
+ cvttss2si ecx,DWORD PTR [rcx]
+
+# Tests for op xmm/mem32, regq
+ cvtss2si rcx,xmm4
+ cvtss2si rcx,DWORD PTR [rcx]
+ cvttss2si rcx,xmm4
+ cvttss2si rcx,DWORD PTR [rcx]
+
+# Tests for op xmm, regq
+ movmskpd rcx,xmm4
+ movmskps rcx,xmm4
+ pmovmskb rcx,xmm4
+
+# Tests for op imm8, xmm, regq/mem32
+ extractps rcx,xmm4,100
+ extractps DWORD PTR [rcx],xmm4,100
+# Tests for op imm8, xmm, regl/mem32
+ pextrd ecx,xmm4,100
+ pextrd DWORD PTR [rcx],xmm4,100
+ extractps ecx,xmm4,100
+ extractps DWORD PTR [rcx],xmm4,100
+
+# Tests for op regl/mem32, xmm[, xmm]
+ cvtsi2sd xmm4,ecx
+ cvtsi2sd xmm4,DWORD PTR [rcx]
+ cvtsi2ss xmm4,ecx
+ cvtsi2ss xmm4,DWORD PTR [rcx]
+
+# Tests for op imm8, xmm/mem32, xmm[, xmm]
+ cmpss xmm6,xmm4,100
+ cmpss xmm6,DWORD PTR [rcx],100
+ insertps xmm6,xmm4,100
+ insertps xmm6,DWORD PTR [rcx],100
+ roundss xmm6,xmm4,100
+ roundss xmm6,DWORD PTR [rcx],100
+
+# Tests for op xmm/m16, xmm
+ pmovsxbq xmm6,xmm4
+ pmovsxbq xmm4,WORD PTR [rcx]
+ pmovzxbq xmm6,xmm4
+ pmovzxbq xmm4,WORD PTR [rcx]
+
+# Tests for op imm8, xmm, regl/mem16
+ pextrw ecx,xmm4,100
+ pextrw WORD PTR [rcx],xmm4,100
+
+# Tests for op imm8, xmm, regq/mem16
+ pextrw rcx,xmm4,100
+ pextrw WORD PTR [rcx],xmm4,100
+
+# Tests for op imm8, regl/mem16, xmm[, xmm]
+ pinsrw xmm4,ecx,100
+ pinsrw xmm4,WORD PTR [rcx],100
+
+
+ pinsrw xmm4,rcx,100
+ pinsrw xmm4,WORD PTR [rcx],100
+
+# Tests for op imm8, xmm, regl/mem8
+ pextrb ecx,xmm4,100
+ pextrb BYTE PTR [rcx],xmm4,100
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+ pinsrb xmm4,ecx,100
+ pinsrb xmm4,BYTE PTR [rcx],100
+
+# Tests for op imm8, xmm, regq
+ pextrw rcx,xmm4,100
+# Tests for op imm8, xmm, regq/mem8
+ pextrb rcx,xmm4,100
+ pextrb BYTE PTR [rcx],xmm4,100
+
+# Tests for op imm8, regl/mem8, xmm[, xmm]
+ pinsrb xmm4,ecx,100
+ pinsrb xmm4,BYTE PTR [rcx],100
+
+# Tests for op xmm, xmm
+ maskmovdqu xmm6,xmm4
+ movq xmm6,xmm4
+
+# Tests for op xmm, regl
+ movmskpd ecx,xmm4
+ movmskps ecx,xmm4
+ pmovmskb ecx,xmm4
+# Tests for op xmm, xmm[, xmm]
+ movhlps xmm6,xmm4
+ movlhps xmm6,xmm4
+ movsd xmm6,xmm4
+ movss xmm6,xmm4
+
+# Tests for op imm8, xmm[, xmm]
+ pslld xmm4,100
+ pslldq xmm4,100
+ psllq xmm4,100
+ psllw xmm4,100
+ psrad xmm4,100
+ psraw xmm4,100
+ psrld xmm4,100
+ psrldq xmm4,100
+ psrlq xmm4,100
+ psrlw xmm4,100
+
+# Tests for op imm8, xmm, regl
+ pextrw ecx,xmm4,100
+