From: Dmitry Selyutin Date: Sun, 18 Sep 2022 14:08:52 +0000 (+0300) Subject: power_insn: support m/sm/dm specifiers X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0220029ffb201563bda619f4267e92829037e77c;p=openpower-isa.git power_insn: support m/sm/dm specifiers --- diff --git a/src/openpower/decoder/power_insn.py b/src/openpower/decoder/power_insn.py index 37ec76ec..c125a19a 100644 --- a/src/openpower/decoder/power_insn.py +++ b/src/openpower/decoder/power_insn.py @@ -1276,7 +1276,6 @@ class BaseRM(_Mapping): subvl: _Field = range(8, 10) mode: Mode.remap(range(19, 24)) smask: _Field = range(16, 19) - extra: Extra.remap(range(10, 19)) extra2: Extra2.remap(range(10, 19)) extra3: Extra3.remap(range(10, 19)) @@ -1301,21 +1300,56 @@ class BaseRM(_Mapping): class NormalLDSTBaseRM(BaseRM): def specifiers(self, record): - width = { + widths = { 0b11: "8", 0b10: "16", 0b01: "32", } + predicates = { + # integer + (0, 0b001): "1<