From 5fc1719cca42529a31ffe2caa5ceec30dafc31b8 Mon Sep 17 00:00:00 2001 From: Dmitry Selyutin Date: Sat, 3 Sep 2022 00:20:16 +0300 Subject: [PATCH] power_insn: support LD/ST indexed mode --- src/openpower/decoder/power_insn.py | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/openpower/decoder/power_insn.py b/src/openpower/decoder/power_insn.py index 707e2b08..0eeaf7b1 100644 --- a/src/openpower/decoder/power_insn.py +++ b/src/openpower/decoder/power_insn.py @@ -778,7 +778,46 @@ class LDSTMode(Mode): prrc1: prrc1 prrc0: prrc0 + class idx(Mode): + class normal(Mode): + """normal mode""" + SEA: Mode[2] + sz: Mode[3] + dz: Mode[3] + + class stride(Mode): + """strided (scalar only source)""" + SEA: Mode[2] + dz: Mode[3] + sz: Mode[4] + + class sat(Mode): + """sat mode: N=0/1 u/s""" + N: Mode[2] + dz: Mode[3] + sz: Mode[4] + + class prrc1(Mode): + """Rc=1: pred-result CR sel""" + inv: Mode[2] + CRbit: Mode[3, 4] + + class prrc0(Mode): + """Rc=0: pred-result z/nonz""" + inv: Mode[2] + zz: Mode[3] + RC1: Mode[4] + dz: Mode[3] + sz: Mode[3] + + normal: normal + stride: stride + sat: sat + prrc1: prrc1 + prrc0: prrc0 + imm: imm + idx: idx class RM(_Mapping): -- 2.30.2