This was broken when varinsnwidth was specified. Signed-off-by: Luis Pires <luis.pi...@eldorado.org.br> --- scripts/decodetree.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/scripts/decodetree.py b/scripts/decodetree.py index 3450a2a08d..fef5eeaf42 100644 --- a/scripts/decodetree.py +++ b/scripts/decodetree.py @@ -1177,11 +1177,12 @@ def output_code(self, i, extracted, outerbits, outermask): ind = str_indent(i) # If we need to load more bytes, do so now. - if extracted < self.width: - output(ind, 'insn = ', decode_function, - '_load_bytes(ctx, insn, {0}, {1});\n' - .format(extracted // 8, self.width // 8)); - extracted = self.width + if self.width is not None: + if extracted < self.width: + output(ind, 'insn = ', decode_function, + '_load_bytes(ctx, insn, {0}, {1});\n' + .format(extracted // 8, self.width // 8)); + extracted = self.width output(ind, 'return insn;\n') # end SizeLeaf -- 2.25.1