diff options
Diffstat (limited to 'test/arch/arm')
| -rw-r--r-- | test/arch/arm/arch.py | 7 | ||||
| -rwxr-xr-x | test/arch/arm/sem.py | 4 |
2 files changed, 8 insertions, 3 deletions
diff --git a/test/arch/arm/arch.py b/test/arch/arm/arch.py index 7f3b321e..90d137d0 100644 --- a/test/arch/arm/arch.py +++ b/test/arch/arm/arch.py @@ -1,7 +1,10 @@ import time from miasm2.arch.arm.arch import * +from miasm2.core.asmblock import AsmSymbolPool from pdb import pm + +symbol_pool = AsmSymbolPool() if 0: a = bs('00') b = bs('01') @@ -267,7 +270,7 @@ for s, l in reg_tests_arm: assert(str(mn) == s) # print hex(b) # print [str(x.get()) for x in mn.args] - l = mn_arm.fromstring(s, 'l') + l = mn_arm.fromstring(s, symbol_pool, 'l') # print l assert(str(l) == s) a = mn_arm.asm(l) @@ -719,7 +722,7 @@ for s, l in reg_tests_armt: assert(str(mn) == s) # print hex(b) # print [str(x.get()) for x in mn.args] - l = mn_armt.fromstring(s, 'l') + l = mn_armt.fromstring(s, symbol_pool, 'l') # print l assert(str(l) == s) print 'Asm..', l diff --git a/test/arch/arm/sem.py b/test/arch/arm/sem.py index 1b14214e..d9e6aa76 100755 --- a/test/arch/arm/sem.py +++ b/test/arch/arm/sem.py @@ -9,11 +9,13 @@ from miasm2.arch.arm.arch import mn_arm as mn from miasm2.arch.arm.sem import ir_arml as ir_arch from miasm2.arch.arm.regs import * from miasm2.expression.expression import * +from miasm2.core.asmblock import AsmSymbolPool from pdb import pm logging.getLogger('cpuhelper').setLevel(logging.ERROR) EXCLUDE_REGS = set([ir_arch().IRDst]) +symbol_pool = AsmSymbolPool() def M(addr): return ExprMem(ExprInt(addr, 16), 16) @@ -24,7 +26,7 @@ def compute(asm, inputstate={}, debug=False): sympool.update({k: ExprInt(v, k.size) for k, v in inputstate.iteritems()}) interm = ir_arch() symexec = SymbolicExecutionEngine(interm, sympool) - instr = mn.fromstring(asm, "l") + instr = mn.fromstring(asm, symbol_pool, "l") code = mn.asm(instr)[0] instr = mn.dis(code, "l") instr.offset = inputstate.get(PC, 0) |