diff options
Diffstat (limited to 'miasm2/expression/simplifications.py')
| -rw-r--r-- | miasm2/expression/simplifications.py | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/miasm2/expression/simplifications.py b/miasm2/expression/simplifications.py index 10264ed7..e93ccd8c 100644 --- a/miasm2/expression/simplifications.py +++ b/miasm2/expression/simplifications.py @@ -1,9 +1,9 @@ -# -# Simplification methods library # -# +# # +# Simplification methods library # +# # import miasm2.expression.expression as m2_expr -from miasm2.expression import simplifications_common +from miasm2.expression import simplifications_common, simplifications_cond from miasm2.expression.expression_helper import fast_unify # Expression Simplifier @@ -34,6 +34,15 @@ class ExpressionSimplifier(object): # Heavy passes PASS_HEAVY = {} + # Cond passes + PASS_COND = {m2_expr.ExprSlice: [simplifications_cond.expr_simp_inf_signed, + simplifications_cond.expr_simp_inf_unsigned_inversed], + m2_expr.ExprOp: [simplifications_cond.exec_inf_unsigned, + simplifications_cond.exec_inf_signed, + simplifications_cond.expr_simp_inverse], + } + + def __init__(self): self.expr_simp_cb = {} |