about summary refs log tree commit diff stats
path: root/miasm2/jitter/codegen.py
diff options
context:
space:
mode:
authorw4kfu <gw4kfu@gmail.com>2018-11-14 16:34:54 -0500
committerw4kfu <gw4kfu@gmail.com>2018-11-14 16:39:01 -0500
commita9bdf11a126fc5d82bc0a57972512c379f858afc (patch)
tree3fbe08c4cfd76baf5ab0d8410ae8dedaa9f30b68 /miasm2/jitter/codegen.py
parent599ac301037a8509cbeb3aa88a19dd314db8e683 (diff)
downloadmiasm-a9bdf11a126fc5d82bc0a57972512c379f858afc.tar.gz
miasm-a9bdf11a126fc5d82bc0a57972512c379f858afc.zip
fix simplification that delete affectation
Revert "X86 sem : mov assignexpr rot / shift"
Diffstat (limited to 'miasm2/jitter/codegen.py')
-rw-r--r--miasm2/jitter/codegen.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/miasm2/jitter/codegen.py b/miasm2/jitter/codegen.py
index 6c0e7a9b..e8177ab5 100644
--- a/miasm2/jitter/codegen.py
+++ b/miasm2/jitter/codegen.py
@@ -170,7 +170,8 @@ class CGen(object):
             # Simplify high level operators
             out = []
             for irblock in irblocks:
-                new_irblock = irblock.simplify(expr_simp_high_to_explicit)[1]
+                new_irblock = self.ir_arch.irbloc_fix_regs_for_mode(irblock, self.ir_arch.attrib)
+                new_irblock = new_irblock.simplify(expr_simp_high_to_explicit)[1]
                 out.append(new_irblock)
             irblocks = out
 
@@ -631,13 +632,12 @@ class CGen(object):
         for instr, irblocks in zip(block.lines, irblocks_list):
             instr_attrib, irblocks_attributes = self.get_attributes(instr, irblocks, log_mn, log_regs)
             for index, irblock in enumerate(irblocks):
-                new_irblock = self.ir_arch.irbloc_fix_regs_for_mode(irblock, self.ir_arch.attrib)
-                label = str(new_irblock.loc_key)
+                label = str(irblock.loc_key)
                 out.append("%-40s // %.16X %s" %
                            (label + ":", instr.offset, instr))
                 if index == 0:
                     out += self.gen_pre_code(instr_attrib)
-                out += self.gen_irblock(instr_attrib, irblocks_attributes[index], instr_offsets, new_irblock)
+                out += self.gen_irblock(instr_attrib, irblocks_attributes[index], instr_offsets, irblock)
 
         out += self.gen_finalize(block)