diff options
| author | 2023-02-21 17:47:15 +0000 | |
|---|---|---|
| committer | 2023-02-21 17:47:15 +0000 | |
| commit | b7eed7d44e81e1bb69fafec9ba85a73bbce63a23 (patch) | |
| tree | 5a191cf78f3d4d0f4231230596f2e87ace2e998b | |
| parent | add data parsing (diff) | |
get rid of unused lablen
| -rw-r--r-- | asm/creole.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/asm/creole.py b/asm/creole.py index e323432..d8f5d32 100644 --- a/asm/creole.py +++ b/asm/creole.py @@ -338,13 +338,18 @@ class Line: self.ins = ins self.args = args - def check_line(self, lablen, reglen): + def check_line(self, reglen, datlen): for a in self.args: if a.at == ArgType.REG: if a.val < 0 or a.val >= reglen: raise RangeCheckException(a.at, a.val, reglen) + elif a.at == ArgType.DAT: + if a.val < 0 or a.val >= datlen: + raise RangeCheckException(a.at, + a.val, + reglen) def __call__(self): return self.ins.render(self.args) @@ -366,7 +371,7 @@ def _term_sep(s): class Program: def _asm_push_line(self, ins, args): l = Line(ins, args) - l.check_line(self.lablen, self.reglen) + l.check_line(self.reglen, self.datlen) self.asm.append(l) def parse_asm_line(self, line): @@ -454,8 +459,8 @@ class Program: assert len(b) < encoding_types[lablen][0] return b - def __init__(self, lablen=16, reglen=16): + def __init__(self, reglen=16, datlen=16): self.asm = [] - self.lablen = lablen self.reglen = reglen + self.datlen = datlen |
