diff options
| author | w4kfu <gw4kfu@gmail.com> | 2018-11-15 07:40:31 -0500 |
|---|---|---|
| committer | w4kfu <gw4kfu@gmail.com> | 2018-11-15 07:40:31 -0500 |
| commit | f72a592a657adf4a90ec3faeff499bf331d704c8 (patch) | |
| tree | 5f22caf51dda212b7b36719931c42b3acd63d257 | |
| parent | af82d243545f930a17025c377194ef0eaa4701ae (diff) | |
| download | miasm-f72a592a657adf4a90ec3faeff499bf331d704c8.tar.gz miasm-f72a592a657adf4a90ec3faeff499bf331d704c8.zip | |
X86 SEM ROL/SHL/SHLD/... add assignation
| -rw-r--r-- | miasm2/arch/x86/sem.py | 12 |
1 files changed, 3 insertions, 9 deletions
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: |