about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorFabrice Desclaux <fabrice.desclaux@cea.fr>2016-12-24 23:01:52 +0100
committerFabrice Desclaux <fabrice.desclaux@cea.fr>2017-01-05 09:47:00 +0100
commitf0a5217b177a5904a904f7d57577f79a72c7b1f0 (patch)
tree17b926ca05b9334ee3b492e85a64a19e7c431539
parent2b93bc6682f3a08a5eccccefa135535708434f9e (diff)
downloadmiasm-f0a5217b177a5904a904f7d57577f79a72c7b1f0.tar.gz
miasm-f0a5217b177a5904a904f7d57577f79a72c7b1f0.zip
IR: fix set_empty_dst using c_next
-rw-r--r--miasm2/ir/ir.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/miasm2/ir/ir.py b/miasm2/ir/ir.py
index 582faee6..0d4ec9fb 100644
--- a/miasm2/ir/ir.py
+++ b/miasm2/ir/ir.py
@@ -409,8 +409,13 @@ class ir(object):
         for b in ir_blocs:
             if b.dst is not None:
                 continue
-            dst = m2_expr.ExprId(self.get_next_label(bloc.lines[-1]),
-                                 self.pc.size)
+            next_lbl = bloc.get_next()
+            if next_lbl is None:
+                dst = m2_expr.ExprId(self.get_next_label(bloc.lines[-1]),
+                                     self.pc.size)
+            else:
+                dst = m2_expr.ExprId(next_lbl,
+                                     self.pc.size)
             b.irs.append(AssignBlock([m2_expr.ExprAff(self.IRDst, dst)]))
             b.lines.append(b.lines[-1])