From dd2da246f676ff827201c9eee3ae698081875bf7 Mon Sep 17 00:00:00 2001 From: serpilliere Date: Sat, 21 Feb 2015 21:09:07 +0100 Subject: Expression: remove code which uses expression modifications --- miasm2/expression/expression_helper.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'miasm2/expression/expression_helper.py') diff --git a/miasm2/expression/expression_helper.py b/miasm2/expression/expression_helper.py index 825cad60..3555530a 100644 --- a/miasm2/expression/expression_helper.py +++ b/miasm2/expression/expression_helper.py @@ -64,9 +64,11 @@ def merge_sliceto_slice(args): final_sources = [] sorted_s = [] for x in sources_int.values(): + x = list(x) # mask int v = x[0].arg & ((1 << (x[2] - x[1])) - 1) - x[0].arg = v + x[0] = m2_expr.ExprInt_from(x[0], v) + x = tuple(x) sorted_s.append((x[1], x)) sorted_s.sort() while sorted_s: @@ -81,7 +83,7 @@ def merge_sliceto_slice(args): a = m2_expr.mod_size2uint[size]( (int(out[0].arg) << (out[1] - s_start)) + int(sorted_s[-1][1][0].arg)) - out[0].arg = a + out[0] = m2_expr.ExprInt(a) sorted_s.pop() out[1] = s_start out[0] = m2_expr.ExprInt_fromsize(size, out[0].arg) -- cgit 1.4.1