diff options
Diffstat (limited to 'test/core')
| -rw-r--r-- | test/core/asmblock.py | 26 | ||||
| -rwxr-xr-x | test/core/parse_asm.py | 12 | ||||
| -rw-r--r-- | test/core/sembuilder.py | 10 |
3 files changed, 24 insertions, 24 deletions
diff --git a/test/core/asmblock.py b/test/core/asmblock.py index 0e965bfd..465697f4 100644 --- a/test/core/asmblock.py +++ b/test/core/asmblock.py @@ -105,7 +105,7 @@ open("graph2.dot", "w").write(asmcfg.dot()) # Test helper methods ## loc_key_to_block should always be updated assert asmcfg.loc_key_to_block(first_block.loc_key) == first_block -testlabel = mdis.symbol_pool.getby_name_create("testlabel") +testlabel = mdis.loc_db.getby_name_create("testlabel") my_block = AsmBlock(testlabel) asmcfg.add_block(my_block) assert len(asmcfg) == 3 @@ -116,7 +116,7 @@ assert asmcfg.loc_key_to_block(my_block.loc_key) == my_block assert len(list(asmcfg.get_bad_blocks())) == 0 assert len(list(asmcfg.get_bad_blocks_predecessors())) == 0 ### Add a bad block, not linked -testlabel_bad = mdis.symbol_pool.getby_name_create("testlabel_bad") +testlabel_bad = mdis.loc_db.getby_name_create("testlabel_bad") my_bad_block = AsmBlockBad(testlabel_bad) asmcfg.add_block(my_bad_block) assert list(asmcfg.get_bad_blocks()) == [my_bad_block] @@ -135,7 +135,7 @@ assert len(list(asmcfg.get_bad_blocks_predecessors(strict=True))) == 0 ## Sanity check asmcfg.sanity_check() ### Next on itself -testlabel_nextitself = mdis.symbol_pool.getby_name_create("testlabel_nextitself") +testlabel_nextitself = mdis.loc_db.getby_name_create("testlabel_nextitself") my_block_ni = AsmBlock(testlabel_nextitself) my_block_ni.bto.add(AsmConstraintNext(my_block_ni.loc_key)) asmcfg.add_block(my_block_ni) @@ -149,11 +149,11 @@ assert error_raised asmcfg.del_block(my_block_ni) asmcfg.sanity_check() ### Multiple next on the same node -testlabel_target = mdis.symbol_pool.getby_name_create("testlabel_target") +testlabel_target = mdis.loc_db.getby_name_create("testlabel_target") my_block_target = AsmBlock(testlabel_target) asmcfg.add_block(my_block_target) -testlabel_src1 = mdis.symbol_pool.getby_name_create("testlabel_src1") -testlabel_src2 = mdis.symbol_pool.getby_name_create("testlabel_src2") +testlabel_src1 = mdis.loc_db.getby_name_create("testlabel_src1") +testlabel_src2 = mdis.loc_db.getby_name_create("testlabel_src2") my_block_src1 = AsmBlock(testlabel_src1) my_block_src2 = AsmBlock(testlabel_src2) my_block_src1.bto.add(AsmConstraintNext(my_block_target.loc_key)) @@ -184,8 +184,8 @@ assert asmcfg.loc_key_to_block(my_block_src1.loc_key).max_size == 0 ## Check pendings ### Create a pending element -testlabel_pend_src = mdis.symbol_pool.getby_name_create("testlabel_pend_src") -testlabel_pend_dst = mdis.symbol_pool.getby_name_create("testlabel_pend_dst") +testlabel_pend_src = mdis.loc_db.getby_name_create("testlabel_pend_src") +testlabel_pend_dst = mdis.loc_db.getby_name_create("testlabel_pend_dst") my_block_src = AsmBlock(testlabel_pend_src) my_block_dst = AsmBlock(testlabel_pend_dst) my_block_src.bto.add(AsmConstraintTo(my_block_dst.loc_key)) @@ -268,16 +268,16 @@ assert asmcfg.successors(tob.loc_key) == [tob.loc_key] # Check split_block ## Without condition for a split, no change asmcfg_bef = asmcfg.copy() -asmcfg.apply_splitting(mdis.symbol_pool) +asmcfg.apply_splitting(mdis.loc_db) assert asmcfg_bef == asmcfg open("graph5.dot", "w").write(asmcfg.dot()) ## Create conditions for a block split -inside_firstbbl = mdis.symbol_pool.getby_offset(4) +inside_firstbbl = mdis.loc_db.getby_offset(4) tob.bto.add(AsmConstraintTo(inside_firstbbl)) asmcfg.rebuild_edges() assert len(asmcfg.pendings) == 1 assert inside_firstbbl in asmcfg.pendings -asmcfg.apply_splitting(mdis.symbol_pool) +asmcfg.apply_splitting(mdis.loc_db) ## Check result assert len(asmcfg) == 6 assert len(asmcfg.pendings) == 0 @@ -322,10 +322,10 @@ solutions = list(matcher.match(asmcfg)) assert len(solutions) == 1 solution = solutions.pop() for jbbl, label in solution.iteritems(): - offset = mdis.symbol_pool.loc_key_to_offset(label) + offset = mdis.loc_db.loc_key_to_offset(label) assert offset == int(jbbl._name, 16) -loc_key_dum = mdis.symbol_pool.getby_name_create("dummy_loc") +loc_key_dum = mdis.loc_db.getby_name_create("dummy_loc") asmcfg.add_node(loc_key_dum) error_raised = False try: diff --git a/test/core/parse_asm.py b/test/core/parse_asm.py index fab3a815..e8d5adc5 100755 --- a/test/core/parse_asm.py +++ b/test/core/parse_asm.py @@ -64,15 +64,15 @@ class TestParseAsm(unittest.TestCase): .string "toto" ''' - asmcfg, symbol_pool = parse_txt(mn_x86, 32, ASM0) + asmcfg, loc_db = parse_txt(mn_x86, 32, ASM0) patches = asm_resolve_final(mn_x86, asmcfg, - symbol_pool) + loc_db) lbls = [] for i in xrange(6): - lbls.append(symbol_pool.getby_name('lbl%d' % i)) + lbls.append(loc_db.getby_name('lbl%d' % i)) # align test - offset = symbol_pool.loc_key_to_offset(lbls[5]) + offset = loc_db.loc_key_to_offset(lbls[5]) assert(offset % 0x10 == 0) lbl2block = {} for block in asmcfg.blocks: @@ -95,10 +95,10 @@ class TestParseAsm(unittest.TestCase): RET ''' - asmcfg, symbol_pool = parse_txt(mn_x86, 32, ASM0) + asmcfg, loc_db = parse_txt(mn_x86, 32, ASM0) lbls = [] for i in xrange(2): - lbls.append(symbol_pool.getby_name('lbl%d' % i)) + lbls.append(loc_db.getby_name('lbl%d' % i)) lbl2block = {} for block in asmcfg.blocks: lbl2block[block.loc_key] = block diff --git a/test/core/sembuilder.py b/test/core/sembuilder.py index 53aa199d..f7a96b89 100644 --- a/test/core/sembuilder.py +++ b/test/core/sembuilder.py @@ -2,15 +2,15 @@ import inspect from pdb import pm from miasm2.core.sembuilder import SemBuilder -from miasm2.core.asmblock import AsmSymbolPool +from miasm2.core.locationdb import LocationDB import miasm2.expression.expression as m2_expr # Test classes class IR(object): - def __init__(self, symbol_pool): - self.symbol_pool = symbol_pool + def __init__(self, loc_db): + self.loc_db = loc_db IRDst = m2_expr.ExprId("IRDst", 32) @@ -45,8 +45,8 @@ def test(Arg1, Arg2, Arg3): a = m2_expr.ExprId('A', 32) b = m2_expr.ExprId('B', 32) c = m2_expr.ExprId('C', 32) -symbol_pool = AsmSymbolPool() -ir = IR(symbol_pool) +loc_db = LocationDB() +ir = IR(loc_db) instr = Instr() res = test(ir, instr, a, b, c) |