diff options
Diffstat (limited to 'test/ir/analysis.py')
| -rwxr-xr-x | test/ir/analysis.py | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/test/ir/analysis.py b/test/ir/analysis.py index b70a09fc..2c0b7b29 100755 --- a/test/ir/analysis.py +++ b/test/ir/analysis.py @@ -1,9 +1,7 @@ -from miasm2.expression.expression import ExprId, ExprInt32, ExprAff, ExprMem, ExprOp +from miasm2.expression.expression import ExprId, ExprInt32, ExprAff, ExprMem from miasm2.core.asmbloc import asm_label from miasm2.ir.analysis import ira from miasm2.ir.ir import ir, irbloc -from miasm2.core.graph import DiGraph -from pdb import pm a = ExprId("a") b = ExprId("b") @@ -624,15 +622,15 @@ g17_exp_irb0 = gen_irbloc(lbl0, [[], ExprAff(b, a), ExprAff(c, b)], - g17_irb0.irs[14] # Trick because a+b+c != ((a+b)+c) - #[ExprAff(ExprMem(ExprId('d', 32), 32), ExprOp('+', ExprOp('+', ExprId('a', 32), ExprId('b', 32)), ExprId('c', 32)))] + g17_irb0.irs[14] + # Trick because a+b+c != ((a+b)+c) ]) g17_exp_ira.blocs = {irb.label : irb for irb in [g17_exp_irb0]} # Begining of tests -for i, test in enumerate([(g1_ira, g1_exp_ira), +for test_nb, test in enumerate([(g1_ira, g1_exp_ira), (g2_ira, g2_exp_ira), (g3_ira, g3_exp_ira), (g4_ira, g4_exp_ira), @@ -653,26 +651,26 @@ for i, test in enumerate([(g1_ira, g1_exp_ira), # Extract test elements g_ira, g_exp_ira = test - print "[+] Test", i+1 + print "[+] Test", test_nb+1 # Print initial graph, for debug - open("graph_%02d.dot" % (i+1), "w").write(g_ira.graph()) + open("graph_%02d.dot" % (test_nb+1), "w").write(g_ira.graph()) # Simplify graph g_ira.dead_simp() # Print simplified graph, for debug - open("simp_graph_%02d.dot" % (i+1), "w").write(g_ira.graph()) + open("simp_graph_%02d.dot" % (test_nb+1), "w").write(g_ira.graph()) # Same number of blocks assert len(g_ira.blocs) == len(g_exp_ira.blocs) # Check that each expr in the blocs are the same - for lbl , irb in g_ira.blocs.iteritems(): + for lbl, irb in g_ira.blocs.iteritems(): exp_irb = g_exp_ira.blocs[lbl] assert len(irb.irs) == len(exp_irb.irs), "(%s) %d / %d" %( lbl, len(irb.irs), len(exp_irb.irs)) - for i in xrange(0,len(exp_irb.irs)): - assert len(irb.irs[i]) == len(exp_irb.irs[i]), "(%s:%d) %d / %d" %( + for i in xrange(0, len(exp_irb.irs)): + assert len(irb.irs[i]) == len(exp_irb.irs[i]), "(%s:%d) %d / %d" %( lbl, i, len(irb.irs[i]), len(exp_irb.irs[i])) for s_instr in xrange(len(irb.irs[i])): assert irb.irs[i][s_instr] == exp_irb.irs[i][s_instr],\ |