about summary refs log tree commit diff stats
path: root/miasm2/arch/msp430/arch.py
diff options
context:
space:
mode:
Diffstat (limited to 'miasm2/arch/msp430/arch.py')
-rw-r--r--miasm2/arch/msp430/arch.py22
1 files changed, 8 insertions, 14 deletions
diff --git a/miasm2/arch/msp430/arch.py b/miasm2/arch/msp430/arch.py
index dff91e7b..624ec19f 100644
--- a/miasm2/arch/msp430/arch.py
+++ b/miasm2/arch/msp430/arch.py
@@ -7,8 +7,8 @@ from miasm2.expression.expression import *
 from miasm2.core.cpu import *
 from collections import defaultdict
 from miasm2.core.bin_stream import bin_stream
-import regs as regs_module
-from regs import *
+import miasm2.arch.msp430.regs as regs_module
+from miasm2.arch.msp430.regs import *
 
 log = logging.getLogger("armdis")
 console_handler = logging.StreamHandler()
@@ -47,18 +47,13 @@ def deref_expr(s, l, t):
     t = t[0]
     assert(len(t) == 1)
     t = t[0]
-    if isinstance(t, ExprId):
-        return t
-    elif isinstance(t, ExprInt):
-        return t
-    elif isinstance(t, ExprMem):
-        return t
-    elif isinstance(t, ExprOp) and t.op == "autoinc":
+    if isinstance(t, ExprId) or \
+            isinstance(t, ExprInt) or \
+            isinstance(t, ExprMem) or \
+            (isinstance(t, ExprOp) and t.op == "autoinc"):
         return t
+
     raise NotImplementedError('not fully functional')
-    if t[-1] == '!':
-        return ExprOp('wback', *t[:-1])
-    return t[0]
 
 
 def f_reg2expr(t):
@@ -301,7 +296,6 @@ class mn_msp430(cls_mn):
 
     def getnextflow(self, symbol_pool):
         raise NotImplementedError('not fully functional')
-        return self.offset + 4
 
 
 def addop(name, fields, args=None, alias=False):
@@ -498,7 +492,7 @@ class bs_cond_off_s(bs_cond):
             raise NotImplementedError("unknown value v[a_s] = %d" % v['a_s'])
 
     def encode(self):
-        return super(bs_cond, self).encode()
+        return super(bs_cond_off_s, self).encode()
 
     def decode(self, v):
         if self.l == 0: