class NormalBaseRM(BaseRM):
- pass
+ @property
+ def specifiers(self):
+ ew = int(self.elwidth)
+ if ew != 0b00:
+ ew = {
+ 0b11: "8",
+ 0b10: "16",
+ 0b01: "32",
+ }[ew]
+ yield f"ew={ew}"
+
+ yield from super().specifiers
class NormalSimpleRM(NormalBaseRM):
class LDSTImmBaseRM(BaseRM):
- pass
+ @property
+ def specifiers(self):
+ ew = int(self.elwidth)
+ if ew != 0b00:
+ ew = {
+ 0b11: "8",
+ 0b10: "16",
+ 0b01: "32",
+ }[ew]
+ yield f"ew={ew}"
+
+ yield from super().specifiers
class LDSTImmSimpleRM(LDSTImmBaseRM):
class LDSTIdxBaseRM(BaseRM):
- pass
+ @property
+ def specifiers(self):
+ ew = int(self.elwidth)
+ if ew != 0b00:
+ ew = {
+ 0b11: "8",
+ 0b10: "16",
+ 0b01: "32",
+ }[ew]
+ yield f"ew={ew}"
+
+ yield from super().specifiers
class LDSTIdxSimpleRM(LDSTIdxBaseRM):