about summary refs log tree commit diff stats
path: root/test
diff options
context:
space:
mode:
authorFabrice Desclaux <fabrice.desclaux@cea.fr>2015-12-24 00:45:12 +0100
committerFabrice Desclaux <fabrice.desclaux@cea.fr>2015-12-24 18:38:19 +0100
commit7b23f2d519bc80870ea9d79c5cda02cef5141ce6 (patch)
treeedc2a11976a7526ea0065f2365ad16103e763645 /test
parentaf7e524f56ba0bf1dce26b9c968c0806c418ea47 (diff)
downloadmiasm-7b23f2d519bc80870ea9d79c5cda02cef5141ce6.tar.gz
miasm-7b23f2d519bc80870ea9d79c5cda02cef5141ce6.zip
Test: add x86 reg test
Diffstat (limited to 'test')
-rw-r--r--test/arch/x86/unit/mn_pinsr.py25
-rw-r--r--test/test_all.py1
2 files changed, 26 insertions, 0 deletions
diff --git a/test/arch/x86/unit/mn_pinsr.py b/test/arch/x86/unit/mn_pinsr.py
new file mode 100644
index 00000000..b7a86d2d
--- /dev/null
+++ b/test/arch/x86/unit/mn_pinsr.py
@@ -0,0 +1,25 @@
+#! /usr/bin/env python
+from asm_test import Asm_Test
+import sys
+
+class Test_PINSRB(Asm_Test):
+    TXT = '''
+    main:
+       CALL      next
+       .byte 0x88, 0x77, 0x66, 0x55, 0x44, 0x33, 0x22, 0x11
+       .byte 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01
+    next:
+       POP       EBP
+       MOVQ      MM0, QWORD PTR [EBP]
+       MOVQ      MM1, MM0
+       PINSRW    MM1, QWORD PTR [EBP+0x8], 2
+       RET
+    '''
+
+    def check(self):
+        assert self.myjit.cpu.MM0 == 0x1122334455667788
+        assert self.myjit.cpu.MM1 == 0x1122070855667788
+
+
+if __name__ == "__main__":
+    [test()() for test in [Test_PINSRB]]
diff --git a/test/test_all.py b/test/test_all.py
index 2370ab18..e161e601 100644
--- a/test/test_all.py
+++ b/test/test_all.py
@@ -46,6 +46,7 @@ for script in ["x86/sem.py",
                "x86/unit/mn_pminu.py",
                "x86/unit/mn_pcmpeq.py",
                "x86/unit/mn_punpck.py",
+               "x86/unit/mn_pinsr.py",
                "arm/arch.py",
                "arm/sem.py",
                "aarch64/unit/mn_ubfm.py",