about summary refs log tree commit diff stats
path: root/example/expression/asm_to_ir.py
diff options
context:
space:
mode:
authorFabrice Desclaux <fabrice.desclaux@cea.fr>2019-02-25 11:09:54 +0100
committerFabrice Desclaux <fabrice.desclaux@cea.fr>2019-03-05 16:52:49 +0100
commit02bbb30efea4980c9d133947cbbf69fb599071ad (patch)
tree3fea6826fcc5354840a27cb1dc99ff31eef81896 /example/expression/asm_to_ir.py
parenteab809932871f91d6f4aa770fc321af9e156e0f5 (diff)
downloadmiasm-02bbb30efea4980c9d133947cbbf69fb599071ad.tar.gz
miasm-02bbb30efea4980c9d133947cbbf69fb599071ad.zip
Support python2/python3
Diffstat (limited to 'example/expression/asm_to_ir.py')
-rw-r--r--example/expression/asm_to_ir.py21
1 files changed, 12 insertions, 9 deletions
diff --git a/example/expression/asm_to_ir.py b/example/expression/asm_to_ir.py
index 7036d960..16f766e1 100644
--- a/example/expression/asm_to_ir.py
+++ b/example/expression/asm_to_ir.py
@@ -1,5 +1,8 @@
+from __future__ import print_function
 from pdb import pm
 
+from future.utils import viewitems
+
 from miasm2.arch.x86.arch import mn_x86
 from miasm2.core import parse_asm
 from miasm2.expression.expression import *
@@ -27,11 +30,11 @@ loop:
 
 loc_db.set_location_offset(loc_db.get_name_location("main"), 0x0)
 for block in asmcfg.blocks:
-    print block
+    print(block)
 
 
-print "symbols:"
-print loc_db
+print("symbols:")
+print(loc_db)
 patches = asmblock.asm_resolve_final(mn_x86, asmcfg, loc_db)
 
 # Translate to IR
@@ -39,16 +42,16 @@ ir_arch = ir_a_x86_32(loc_db)
 ircfg = ir_arch.new_ircfg_from_asmcfg(asmcfg)
 
 # Display IR
-for lbl, irblock in ircfg.blocks.items():
-    print irblock
+for lbl, irblock in viewitems(ircfg.blocks):
+    print(irblock)
 
 # Dead propagation
 open('graph.dot', 'w').write(ircfg.dot())
-print '*' * 80
+print('*' * 80)
 dead_simp(ir_arch, ircfg)
 open('graph2.dot', 'w').write(ircfg.dot())
 
 # Display new IR
-print 'new ir blocks'
-for lbl, irblock in ircfg.blocks.items():
-    print irblock
+print('new ir blocks')
+for lbl, irblock in viewitems(ircfg.blocks):
+    print(irblock)