Interface IEOperation
- All Superinterfaces:
IEGeneric
,IInstructionOperand
An IR operation. Built-in operations have their operators defined in
OperationType
.
Custom operations (functions
) may be created as well.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionint
Retrieve the custom operation type, if the operation iscustom
.getOperand
(int index) Retrieve an operand by index.Retrieve the first operand.Retrieve the second operand.Retrieve the list of operands.Retrieve the actual operation name.Retrieve the operation type.default boolean
Determine whether this IR is a custom operation.default boolean
isCustomOperation
(String opname) Determine whether this IR is a custom operation with the provided name.Methods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric
accessesMemory, addFlags, asCompose, asCond, asGroup, asGroupElt, asImm, asMem, asOperation, asRange, asSlice, asStatement, asVar, bit, collectSubExpressions, copyProperties, countSuccessiveBits, duplicate, equalsEx, evaluate, evaluateAddress, evaluateUnsignedLong, examine, find, findByType, findByType, findParent, findParent, generateC, getBitsize, getDefinedOrUsedAsDestination, getExplicitlyUsed, getExplicitlyUsed, getFlags, getPriority, getSafeType, getType, getUsed, getUsed, half, hasFlags, isCompose, isCond, isGroup, isGroupElt, isImm, isMem, isOperation, isOperation, isOperation, isOperation, isRange, isSlice, isSlice, isStatement, isVar, isVar, leftShift, leftShift, lsb, msb, part, removeFlags, replaceSubExpression, replaceVar, rightShift, rightShift, safelyType, setFlags, setType, setType, setType, signExtend, slice, slice, slice, topHalf, updateTypes, verify, visitDepthPost, visitDepthPost, visitDepthPost, visitDepthPre, visitDepthPre, visitDepthPre, zeroExtend
Methods inherited from interface com.pnfsoftware.jeb.core.units.code.IInstructionOperand
format
-
Method Details
-
getOperationName
String getOperationName()Retrieve the actual operation name.- Returns:
-
getCountOfOperands
int getCountOfOperands()- Returns:
- the count of operands
-
getOperand1
IEGeneric getOperand1()Retrieve the first operand.- Returns:
- may be null
-
getOperand2
IEGeneric getOperand2()Retrieve the second operand.- Returns:
- may be null
-
getOperand
Retrieve an operand by index.- Parameters:
index
- 0-based index- Returns:
- null if the index is out-of-range
-
getOperands
Retrieve the list of operands.- Returns:
-
getOperationType
OperationType getOperationType()Retrieve the operation type. If the operation is custom, usegetCustomOperationType()
to retrieve the actual function.- Returns:
-
getCustomOperationType
FunctionOptype getCustomOperationType()Retrieve the custom operation type, if the operation iscustom
.- Returns:
-
isCustomOperation
default boolean isCustomOperation()Determine whether this IR is a custom operation.- Returns:
-
isCustomOperation
Determine whether this IR is a custom operation with the provided name.- Parameters:
opname
-- Returns:
-