From f72a592a657adf4a90ec3faeff499bf331d704c8 Mon Sep 17 00:00:00 2001 From: w4kfu Date: Thu, 15 Nov 2018 07:40:31 -0500 Subject: X86 SEM ROL/SHL/SHLD/... add assignation --- miasm2/arch/x86/sem.py | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'miasm2') diff --git a/miasm2/arch/x86/sem.py b/miasm2/arch/x86/sem.py index cfd7e5a7..c0b578f6 100644 --- a/miasm2/arch/x86/sem.py +++ b/miasm2/arch/x86/sem.py @@ -636,9 +636,7 @@ def _rotate_tpl(ir, instr, dst, src, op, left=False): m2_expr.ExprAssign(of, new_of), m2_expr.ExprAssign(dst, res) ] - e = [] - if dst.size == 32 and dst in replace_regs[64]: - e.append(m2_expr.ExprAssign(dst, dst)) + e = [m2_expr.ExprAssign(dst, dst)] # Don't generate conditional shifter on constant if isinstance(shifter, m2_expr.ExprInt): if int(shifter) != 0: @@ -686,9 +684,7 @@ def rotate_with_carry_tpl(ir, instr, op, dst, src): m2_expr.ExprAssign(of, new_of), m2_expr.ExprAssign(dst, new_dst) ] - e = [] - if dst.size == 32 and dst in replace_regs[64]: - e.append(m2_expr.ExprAssign(dst, dst)) + e = [m2_expr.ExprAssign(dst, dst)] # Don't generate conditional shifter on constant if isinstance(shifter, m2_expr.ExprInt): if int(shifter) != 0: @@ -774,9 +770,7 @@ def _shift_tpl(op, ir, instr, a, b, c=None, op_inv=None, left=False, m2_expr.ExprAssign(a, res), ] e_do += update_flag_znp(res) - e = [] - if a.size == 32 and a in replace_regs[64]: - e.append(m2_expr.ExprAssign(a, a)) + e = [m2_expr.ExprAssign(a, a)] # Don't generate conditional shifter on constant if isinstance(shifter, m2_expr.ExprInt): if int(shifter) != 0: -- cgit 1.4.1