diff options
| author | serpilliere <serpilliere@users.noreply.github.com> | 2020-03-30 14:59:40 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-03-30 14:59:40 +0200 |
| commit | 1d5127036dc7e1688c102c5781a6618b5dd27f16 (patch) | |
| tree | 021484913b08e5c72366da78e6a6c5d68e31893f /miasm/expression/simplifications_common.py | |
| parent | 83196a14885467a043666882db7d8120bb127b61 (diff) | |
| parent | bf9babdcd886d51666c04e4fc39a4b03e281974a (diff) | |
| download | focaccia-miasm-1d5127036dc7e1688c102c5781a6618b5dd27f16.tar.gz focaccia-miasm-1d5127036dc7e1688c102c5781a6618b5dd27f16.zip | |
Merge pull request #1158 from serpilliere/expr_visitor
Add Expression visitor
Diffstat (limited to 'miasm/expression/simplifications_common.py')
| -rw-r--r-- | miasm/expression/simplifications_common.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/miasm/expression/simplifications_common.py b/miasm/expression/simplifications_common.py index 90f8945b..38859f3a 100644 --- a/miasm/expression/simplifications_common.py +++ b/miasm/expression/simplifications_common.py @@ -450,8 +450,8 @@ def simp_cond_factor(e_s, expr): for cond, vals in viewitems(conds): new_src1 = [x.src1 for x in vals] new_src2 = [x.src2 for x in vals] - src1 = e_s.expr_simp_wrapper(ExprOp(expr.op, *new_src1)) - src2 = e_s.expr_simp_wrapper(ExprOp(expr.op, *new_src2)) + src1 = e_s.expr_simp(ExprOp(expr.op, *new_src1)) + src2 = e_s.expr_simp(ExprOp(expr.op, *new_src2)) c_out.append(ExprCond(cond, src1, src2)) if len(c_out) == 1: @@ -521,7 +521,7 @@ def simp_slice(e_s, expr): # distributivity of slice and & # (a & int)[x:y] => 0 if int[x:y] == 0 if expr.arg.is_op("&") and expr.arg.args[-1].is_int(): - tmp = e_s.expr_simp_wrapper(expr.arg.args[-1][expr.start:expr.stop]) + tmp = e_s.expr_simp(expr.arg.args[-1][expr.start:expr.stop]) if tmp.is_int(0): return tmp # distributivity of slice and exprcond @@ -536,7 +536,7 @@ def simp_slice(e_s, expr): # (a * int)[0:y] => (a[0:y] * int[0:y]) if expr.start == 0 and expr.arg.is_op("*") and expr.arg.args[-1].is_int(): - args = [e_s.expr_simp_wrapper(a[expr.start:expr.stop]) for a in expr.arg.args] + args = [e_s.expr_simp(a[expr.start:expr.stop]) for a in expr.arg.args] return ExprOp(expr.arg.op, *args) # (a >> int)[x:y] => a[x+int:y+int] with int+y <= a.size |