Package ghidra.pcode.emu.jit.op
Interface JitDefOp
- All Superinterfaces:
JitOp
- All Known Subinterfaces:
JitBinOp
,JitBoolBinOp
,JitBoolUnOp
,JitFloatBinOp
,JitFloatTestOp
,JitFloatUnOp
,JitIntBinOp
,JitIntTestOp
,JitIntUnOp
,JitUnOp
- All Known Implementing Classes:
JitBoolAndOp
,JitBoolNegateOp
,JitBoolOrOp
,JitBoolXorOp
,JitCallOtherDefOp
,JitCatenateOp
,JitCopyOp
,JitFloatAbsOp
,JitFloatAddOp
,JitFloatCeilOp
,JitFloatDivOp
,JitFloatEqualOp
,JitFloatFloat2FloatOp
,JitFloatFloorOp
,JitFloatInt2FloatOp
,JitFloatLessEqualOp
,JitFloatLessOp
,JitFloatMultOp
,JitFloatNaNOp
,JitFloatNegOp
,JitFloatNotEqualOp
,JitFloatRoundOp
,JitFloatSqrtOp
,JitFloatSubOp
,JitFloatTruncOp
,JitInt2CompOp
,JitIntAddOp
,JitIntAndOp
,JitIntCarryOp
,JitIntDivOp
,JitIntEqualOp
,JitIntLeftOp
,JitIntLessEqualOp
,JitIntLessOp
,JitIntMultOp
,JitIntNegateOp
,JitIntNotEqualOp
,JitIntOrOp
,JitIntRemOp
,JitIntRightOp
,JitIntSBorrowOp
,JitIntSCarryOp
,JitIntSDivOp
,JitIntSExtOp
,JitIntSLessEqualOp
,JitIntSLessOp
,JitIntSRemOp
,JitIntSRightOp
,JitIntSubOp
,JitIntXorOp
,JitIntZExtOp
,JitLoadOp
,JitLzCountOp
,JitPhiOp
,JitPopCountOp
,JitSubPieceOp
,JitSynthSubPieceOp
A p-code operator use-def node with an output
-
Method Summary
Modifier and TypeMethodDescriptiondefault boolean
Indicates the operation can be removed if its output is never used.default void
link()
Add this op to theJitVal.uses()
of each input operand, and (if applicable) set theJitOutVar.definition()
of the output operand to this op.out()
The the use-def variable node for the output.type()
The required type behavior for the outputdefault void
unlink()
Remove this op from theJitVal.uses()
of each input operand, and (if applicable) unset theJitOutVar.definition()
of the output operand.
-
Method Details
-
canBeRemoved
default boolean canBeRemoved()Description copied from interface:JitOp
Indicates the operation can be removed if its output is never used.- Specified by:
canBeRemoved
in interfaceJitOp
- Returns:
- true if removable
-
out
JitOutVar out()The the use-def variable node for the output.- Returns:
- the output
-
link
default void link()Description copied from interface:JitOp
Add this op to theJitVal.uses()
of each input operand, and (if applicable) set theJitOutVar.definition()
of the output operand to this op. -
unlink
default void unlink()Description copied from interface:JitOp
Remove this op from theJitVal.uses()
of each input operand, and (if applicable) unset theJitOutVar.definition()
of the output operand. -
type
JitTypeBehavior type()The required type behavior for the output- Returns:
- the behavior
-