summaryrefslogtreecommitdiff
path: root/python/lowlevelil.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/lowlevelil.py')
-rw-r--r--python/lowlevelil.py38
1 files changed, 37 insertions, 1 deletions
diff --git a/python/lowlevelil.py b/python/lowlevelil.py
index ce9770f2..9f601fd4 100644
--- a/python/lowlevelil.py
+++ b/python/lowlevelil.py
@@ -383,7 +383,13 @@ class LowLevelILInstruction(BaseILInstruction):
("src", "expr")
], LowLevelILOperation.LLIL_CTZ: [("src", "expr")], LowLevelILOperation.LLIL_RBIT: [
("src", "expr")
- ], LowLevelILOperation.LLIL_CLS: [("src", "expr")], LowLevelILOperation.LLIL_SX: [
+ ], LowLevelILOperation.LLIL_CLS: [("src", "expr")], LowLevelILOperation.LLIL_MINS: [
+ ("left", "expr"), ("right", "expr")
+ ], LowLevelILOperation.LLIL_MAXS: [("left", "expr"), ("right", "expr")], LowLevelILOperation.LLIL_MINU: [
+ ("left", "expr"), ("right", "expr")
+ ], LowLevelILOperation.LLIL_MAXU: [("left", "expr"), ("right", "expr")], LowLevelILOperation.LLIL_ABS: [
+ ("src", "expr")
+ ], LowLevelILOperation.LLIL_SX: [
("src", "expr")
], LowLevelILOperation.LLIL_ZX: [("src", "expr")], LowLevelILOperation.LLIL_LOW_PART: [
("src", "expr")
@@ -1399,6 +1405,31 @@ class LowLevelILCls(LowLevelILUnaryBase, Arithmetic):
@dataclass(frozen=True, repr=False, eq=False)
+class LowLevelILMins(LowLevelILBinaryBase, Arithmetic, Signed):
+ pass
+
+
+@dataclass(frozen=True, repr=False, eq=False)
+class LowLevelILMaxs(LowLevelILBinaryBase, Arithmetic, Signed):
+ pass
+
+
+@dataclass(frozen=True, repr=False, eq=False)
+class LowLevelILMinu(LowLevelILBinaryBase, Arithmetic):
+ pass
+
+
+@dataclass(frozen=True, repr=False, eq=False)
+class LowLevelILMaxu(LowLevelILBinaryBase, Arithmetic):
+ pass
+
+
+@dataclass(frozen=True, repr=False, eq=False)
+class LowLevelILAbs(LowLevelILUnaryBase, Arithmetic):
+ pass
+
+
+@dataclass(frozen=True, repr=False, eq=False)
class LowLevelILSx(LowLevelILUnaryBase, Arithmetic):
pass
@@ -3174,6 +3205,11 @@ ILInstruction:Dict[LowLevelILOperation, LowLevelILInstruction] = { # type: igno
LowLevelILOperation.LLIL_CTZ: LowLevelILCtz, # [("src", "expr")],
LowLevelILOperation.LLIL_RBIT: LowLevelILRbit, # [("src", "expr")],
LowLevelILOperation.LLIL_CLS: LowLevelILCls, # [("src", "expr")],
+ LowLevelILOperation.LLIL_MINS: LowLevelILMins, # [("left", "expr"), ("right", "expr")],
+ LowLevelILOperation.LLIL_MAXS: LowLevelILMaxs, # [("left", "expr"), ("right", "expr")],
+ LowLevelILOperation.LLIL_MINU: LowLevelILMinu, # [("left", "expr"), ("right", "expr")],
+ LowLevelILOperation.LLIL_MAXU: LowLevelILMaxu, # [("left", "expr"), ("right", "expr")],
+ LowLevelILOperation.LLIL_ABS: LowLevelILAbs, # [("src", "expr")],
LowLevelILOperation.LLIL_SX: LowLevelILSx, # [("src", "expr")],
LowLevelILOperation.LLIL_ZX: LowLevelILZx, # [("src", "expr")],
LowLevelILOperation.LLIL_LOW_PART: LowLevelILLowPart, # [("src", "expr")],