diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/arch/x86/arch.py | 20 | ||||
| -rw-r--r-- | test/expression/simplifications.py | 5 |
2 files changed, 25 insertions, 0 deletions
diff --git a/test/arch/x86/arch.py b/test/arch/x86/arch.py index 202ecac5..68a14036 100644 --- a/test/arch/x86/arch.py +++ b/test/arch/x86/arch.py @@ -3097,6 +3097,26 @@ reg_tests = [ (m32, "00000000 EMMS", "0f77"), + (m64, "00000000 INCSSP RAX", + "f3480faee8"), + (m64, "00000000 INCSSP EAX", + "f30faee8"), + (m64, "00000000 RDSSP EAX", + "f30f1ec8"), + (m64, "00000000 RDSSP RAX", + "f3480f1ec8"), + (m64, "00000000 SAVEPREVSSP", + "f30f01ea"), + (m64, "00000000 RSTORSSP XMMWORD PTR [RAX]", + "f30f0128"), + (m64, "00000000 WRSS QWORD PTR [0x1234], RDX", + "480f38f6142534120000"), + (m64, "00000000 WRUSS DWORD PTR [EAX], EAX", + "67660f38f500"), + (m64, "00000000 SETSSBSY", + "f30f01e8"), + (m64, "00000000 CLRSSBSY XMMWORD PTR [RAX]", + "f30fae30"), (m64, "00000000 ENDBR64", "f30f1efa"), (m32, "00000000 ENDBR32", diff --git a/test/expression/simplifications.py b/test/expression/simplifications.py index 1a22c43d..e0b666da 100644 --- a/test/expression/simplifications.py +++ b/test/expression/simplifications.py @@ -192,6 +192,11 @@ to_test = [(ExprInt(1, 32) - ExprInt(1, 32), ExprInt(0, 32)), ExprOp('&', a, ExprInt(0x0FFFFFFF, 32))), (ExprOp('<<', ExprOp('>>', a, ExprInt(0x4, 32)), ExprInt(0x4, 32)), ExprOp('&', a, ExprInt(0xFFFFFFF0, 32))), + + (ExprCompose(ExprId("a", 8), ExprId("b", 24)) & ExprInt(0xFF, 32), ExprCompose(ExprId("a", 8), ExprInt(0x0, 24))), + (ExprCompose(ExprId("a", 8), ExprInt(0x12, 8), ExprId("b", 16)) & ExprInt(0xFFFF, 32), ExprCompose(ExprId("a", 8), ExprInt(0x12, 24))), + (ExprCompose(ExprId("a", 8), ExprInt(0x1234, 16), ExprId("b", 8)) & ExprInt(0xFFFF, 32), ExprCompose(ExprId("a", 8), ExprInt(0x34, 24))), + (a[:32], a), (a[:8][:8], a[:8]), (a[:16][:8], a[:8]), |