about summary refs log tree commit diff stats
path: root/miasm2/expression/simplifications_common.py
diff options
context:
space:
mode:
authorJB Cayrou <jb.cayrou@gmail.com>2016-06-29 10:57:11 +0200
committerJB Cayrou <jb.cayrou@gmail.com>2016-06-29 10:57:11 +0200
commit0b30f6441d37f3c2109cba34f070555bf31582e8 (patch)
treef71076e077d64db3013b7494cbe7c08fa9a39f5c /miasm2/expression/simplifications_common.py
parente067f41e34e9d99408be3b5194205390f05a8b2c (diff)
downloadmiasm-0b30f6441d37f3c2109cba34f070555bf31582e8.tar.gz
miasm-0b30f6441d37f3c2109cba34f070555bf31582e8.zip
Add ** (pow) operator
Diffstat (limited to 'miasm2/expression/simplifications_common.py')
-rw-r--r--miasm2/expression/simplifications_common.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/miasm2/expression/simplifications_common.py b/miasm2/expression/simplifications_common.py
index a52debe6..2d5e4e6b 100644
--- a/miasm2/expression/simplifications_common.py
+++ b/miasm2/expression/simplifications_common.py
@@ -30,6 +30,8 @@ def simp_cst_propagation(e_s, e):
                 o = i1.arg + i2.arg
             elif op == '*':
                 o = i1.arg * i2.arg
+            elif op == '**':
+                o =i1.arg ** i2.arg
             elif op == '^':
                 o = i1.arg ^ i2.arg
             elif op == '&':
@@ -194,7 +196,7 @@ def simp_cst_propagation(e_s, e):
             j += 1
         i += 1
 
-    if op in ['|', '&', '%', '/'] and len(args) == 1:
+    if op in ['|', '&', '%', '/', '**'] and len(args) == 1:
         return args[0]
 
     # A <<< A.size => A