@classmethod
def match(cls, desc, record, etalon, hint):
- if not desc != etalon:
+ if desc != etalon:
return None
return cls(desc=desc, record=record, hint=hint)
class SpecifierSEA(Specifier):
@classmethod
def match(cls, desc, record):
- if desc != "els":
+ if desc != "sea":
return None
return cls(record=record)
rm = insn.prefix.rm.select(record=self.record)
if rm.mode.sel not in (0b00, 0b01):
raise ValueError("sea is only valid for normal and els modes")
- rm.sea = 1
+ rm.SEA = 1
@_dataclasses.dataclass(eq=True, frozen=True)
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierSatS(Specifier):
+class SpecifierSatS(SpecifierSat):
@classmethod
def match(cls, desc, record):
return super().match(desc=desc, record=record,
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierSatU(Specifier):
+class SpecifierSatU(SpecifierSat):
@classmethod
def match(cls, desc, record):
return super().match(desc=desc, record=record,
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierVSi(SpecifierVS):
+class SpecifierVSi(SpecifierBranch):
@classmethod
def match(cls, desc, record):
return super().match(desc=desc, record=record, etalon="vsi")
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierVSb(SpecifierVS):
+class SpecifierVSb(SpecifierBranch):
@classmethod
def match(cls, desc, record):
return super().match(desc=desc, record=record, etalon="vsb")
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierVSbi(SpecifierVS):
+class SpecifierVSbi(SpecifierBranch):
@classmethod
def match(cls, desc, record):
return super().match(desc=desc, record=record, etalon="vsbi")
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierCTR(SpecifierVS):
+class SpecifierCTR(SpecifierBranch):
@classmethod
def match(cls, desc, record):
if desc != "ctr":
@_dataclasses.dataclass(eq=True, frozen=True)
-class SpecifierCTi(SpecifierVS):
+class SpecifierCTi(SpecifierBranch):
@classmethod
def match(cls, desc, record):
if desc != "cti":
SpecifierSZ,
SpecifierDZ,
SpecifierEls,
+ SpecifierSEA,
SpecifierSatS,
SpecifierSatU,
SpecifierMR,