Interface UnOpGen<T extends JitUnOp>

Type Parameters:
T - the class of p-code op node in the use-def graph
All Superinterfaces:
OpGen<T>
All Known Subinterfaces:
FloatConvertUnOpGen<T>, FloatOpUnOpGen<T>, IntCountUnOpGen<T>, IntExtUnOpGen<T>, IntOpUnOpGen<T>
All Known Implementing Classes:
BoolNegateOpGen, CopyOpGen, FloatAbsOpGen, FloatCeilOpGen, FloatFloat2FloatOpGen, FloatFloorOpGen, FloatInt2FloatOpGen, FloatNaNOpGen, FloatNegOpGen, FloatRoundOpGen, FloatSqrtOpGen, FloatTruncOpGen, Int2CompOpGen, IntNegateOpGen, IntSExtOpGen, IntZExtOpGen, LzCountOpGen, PopCountOpGen

public interface UnOpGen<T extends JitUnOp> extends OpGen<T>
An extension that provides conveniences and common implementations for unary p-code operators
  • Nested Class Summary

    Nested classes/interfaces inherited from interface ghidra.pcode.emu.jit.gen.op.OpGen

    OpGen.DeadOpResult, OpGen.LiveOpResult, OpGen.OpResult
  • Method Summary

    Change
    Modifier and Type
    Method
    Description
    MODIFIED
    default Opnd.Ext
    ext()
    When loading and storing variables, the kind of extension to apply
    boolean
    Whether this operator is signed
    REMOVED
    JitType
    generateUnOpRunCode(JitCodeGenerator gen, T op, JitBlock block, JitType uType, MethodVisitor rv)
    Removed
    REMOVED
    void
    generateRunCode(JitCodeGenerator gen, T op, JitBlock block, MethodVisitor rv)
    Removed

    Methods inherited from interface ghidra.pcode.emu.jit.gen.op.OpGen

    genRun
  • Method Details

    • isSigned

      boolean isSigned()
      Whether this operator is signed

      In many cases, the operator itself is not affected by the signedness of the operands; however, if size adjustments to the operands are needed, this can determine how those operands are extended.

      Returns:
      true for signed, false if not
    • ext MODIFIED

      default Opnd.Ext ext()
      return type: Ext → Ext
      -ghidra.pcode.emu.jit.gen.type.TypeConversions.Ext ext()
      +ghidra.pcode.emu.jit.gen.opnd.Opnd.Ext ext()
      When loading and storing variables, the kind of extension to apply
      Returns:
      the extension kind