From: Dmitry Selyutin Date: Sun, 6 Nov 2022 09:29:55 +0000 (+0300) Subject: power_insn: discard overlaps for dynamic operands X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8962c347757aa70f0aae5771c627bb6e43efa5b5;p=openpower-isa.git power_insn: discard overlaps for dynamic operands --- diff --git a/src/openpower/decoder/power_insn.py b/src/openpower/decoder/power_insn.py index f278de35..87b816a2 100644 --- a/src/openpower/decoder/power_insn.py +++ b/src/openpower/decoder/power_insn.py @@ -968,7 +968,10 @@ class XOStaticOperand(StaticOperand): # This part is tricky: we could have used self.record.static_operands, # but this would cause an infinite recursion, since this code is called # from the self.record.static_operands method already. - for (cls, kwargs) in self.record.mdwn.operands.static: + operands = [] + operands.extend(self.record.mdwn.operands.static) + operands.extend(self.record.mdwn.operands.dynamic) + for (cls, kwargs) in operands: operand = cls(record=self.record, **kwargs) for idx in operand.span: rev = span.pop(idx, None)