about summary refs log tree commit diff stats
path: root/test/arch/x86
diff options
context:
space:
mode:
Diffstat (limited to 'test/arch/x86')
-rw-r--r--test/arch/x86/arch.py11
-rwxr-xr-xtest/arch/x86/unit/mn_cpuid.py21
2 files changed, 32 insertions, 0 deletions
diff --git a/test/arch/x86/arch.py b/test/arch/x86/arch.py
index e6797da2..b0ea7cb4 100644
--- a/test/arch/x86/arch.py
+++ b/test/arch/x86/arch.py
@@ -2328,6 +2328,8 @@ reg_tests = [
 
     (m64, "00000000    MOVMSKPS   EAX, XMM2",
      "0f50c2"),
+    (m64, "00000000    MOVMSKPS   R8D, XMM2",
+     "440f50c2"),
 
     (m32, "00000000    ADDSS      XMM2, DWORD PTR [ECX]",
      "f30f5811"),
@@ -2725,6 +2727,9 @@ reg_tests = [
     (m32, "00000000    PSLLW      XMM6, 0x5",
     "660F71F605"),
 
+    (m64, "00000000    PSLLDQ     XMM2, 0x1",
+    "660F73Fa01"),
+
 
     (m32, "00000000    PSLLQ      MM2, QWORD PTR [EDX]",
     "0FF312"),
@@ -2919,6 +2924,12 @@ reg_tests = [
     (m32, "00000000    PMOVMSKB   EAX, XMM7",
      "660FD7C7"),
 
+    (m64, "XXXXXXXX    PMOVMSKB   R8D, XMM2",
+    "66440fd7c2"),
+    (m64, "XXXXXXXX    PMOVMSKB   EAX, XMM2",
+    "660fd7c2"),
+
+
     (m64, "00000000    SHUFPS     XMM0, XMM6, 0x44",
      "0fc6c644"),
     (m64, "00000000    SHUFPD     XMM0, XMM6, 0x44",
diff --git a/test/arch/x86/unit/mn_cpuid.py b/test/arch/x86/unit/mn_cpuid.py
new file mode 100755
index 00000000..026de207
--- /dev/null
+++ b/test/arch/x86/unit/mn_cpuid.py
@@ -0,0 +1,21 @@
+#! /usr/bin/env python2
+
+import sys
+
+from asm_test import Asm_Test_32
+
+class Test_CPUID(Asm_Test_32):
+    """Check for cpuid support (and not for arbitrary returned values)"""
+    TXT = '''
+    main:
+       XOR EAX, EAX
+       CPUID
+       RET
+    '''
+
+    def check(self):
+        assert self.myjit.cpu.EAX == 0xa
+
+
+if __name__ == "__main__":
+    [test(*sys.argv[1:])() for test in [Test_CPUID]]