diff options
Diffstat (limited to 'miasm2/ir')
| -rw-r--r-- | miasm2/ir/ir.py | 4 | ||||
| -rw-r--r-- | miasm2/ir/symbexec_types.py | 3 | ||||
| -rw-r--r-- | miasm2/ir/translators/C.py | 26 | ||||
| -rw-r--r-- | miasm2/ir/translators/smt2.py | 1 | ||||
| -rw-r--r-- | miasm2/ir/translators/z3_ir.py | 1 |
5 files changed, 17 insertions, 18 deletions
diff --git a/miasm2/ir/ir.py b/miasm2/ir/ir.py index 06eaae0a..db47d4ef 100644 --- a/miasm2/ir/ir.py +++ b/miasm2/ir/ir.py @@ -697,9 +697,9 @@ class DiGraphIR(IRCFG): Use IRCFG instead of DiGraphIR """ - def __init__(self, irdst, loc_db, blocks=None, *args, **kwargs): + def __init__(self, *args, **kwargs): warnings.warn('DEPRECATION WARNING: use "IRCFG" instead of "DiGraphIR"') - super(IRCFG, self).__init__(irdst, loc_db, blocks=None, *args, **kwargs) + raise NotImplementedError("Depreceated") class IntermediateRepresentation(object): diff --git a/miasm2/ir/symbexec_types.py b/miasm2/ir/symbexec_types.py index 349d55a6..2b7643ca 100644 --- a/miasm2/ir/symbexec_types.py +++ b/miasm2/ir/symbexec_types.py @@ -28,6 +28,9 @@ class SymbolicStateCTypes(StateEngine): return False return self.symbols == other.symbols + def __ne__(self, other): + return not self.__eq__(other) + def __iter__(self): for dst, src in self._symbols: yield dst, src diff --git a/miasm2/ir/translators/C.py b/miasm2/ir/translators/C.py index 33c21049..89a2ac84 100644 --- a/miasm2/ir/translators/C.py +++ b/miasm2/ir/translators/C.py @@ -1,11 +1,9 @@ from miasm2.ir.translators.translator import Translator -from miasm2.core import asmblock from miasm2.expression.modint import size2mask from miasm2.expression.expression import ExprInt, ExprCond, ExprCompose def int_size_to_bn(value, size): if size < 32: - size = 32 int_str = "%.8x" % value size_nibble = 8 else: @@ -259,8 +257,8 @@ class TranslatorC(Translator): out = 'SHIFT_%s(%d, %s, %s)' % ( self.dct_shift[expr.op].upper(), expr.args[0].size, - self.from_expr(expr.args[0]), - self.from_expr(expr.args[1]) + arg0, + arg1 ) else: op = { @@ -315,8 +313,8 @@ class TranslatorC(Translator): out = '(%s(%s, %s, %s) &%s)' % ( self.dct_rot[expr.op], expr.args[0].size, - self.from_expr(expr.args[0]), - self.from_expr(expr.args[1]), + arg0, + arg1, self._size2mask(expr.args[0].size), ) else: @@ -358,14 +356,14 @@ class TranslatorC(Translator): out = '%s%d(%s, %s)' % ( expr.op, expr.args[0].size, - self.from_expr(expr.args[0]), - self.from_expr(expr.args[1]) + arg0, + arg1 ) else: out = "bignum_%s(%s, %s)" % ( expr.op, - self.from_expr(expr.args[0]), - self.from_expr(expr.args[1]) + arg0, + arg1 ) out = "bignum_mask(%s, %d)"% (out, expr.size) return out @@ -380,14 +378,14 @@ class TranslatorC(Translator): out = '%s%d(%s, %s)' % ( expr.op, expr.args[0].size, - self.from_expr(expr.args[0]), - self.from_expr(expr.args[1]) + arg0, + arg1 ) else: out = "bignum_%s(%s, %s, %d)" % ( expr.op, - self.from_expr(expr.args[0]), - self.from_expr(expr.args[1]), + arg0, + arg1, expr.size ) out = "bignum_mask(%s, %d)"% (out, expr.size) diff --git a/miasm2/ir/translators/smt2.py b/miasm2/ir/translators/smt2.py index 1a513bfb..f285c92a 100644 --- a/miasm2/ir/translators/smt2.py +++ b/miasm2/ir/translators/smt2.py @@ -1,5 +1,4 @@ import logging -import operator from miasm2.ir.translators.translator import Translator from miasm2.expression.smt2_helper import * diff --git a/miasm2/ir/translators/z3_ir.py b/miasm2/ir/translators/z3_ir.py index 1b0578b7..a481acd7 100644 --- a/miasm2/ir/translators/z3_ir.py +++ b/miasm2/ir/translators/z3_ir.py @@ -1,6 +1,5 @@ import imp import logging -import operator # Raise an ImportError if z3 is not available WITHOUT actually importing it imp.find_module("z3") |