Record Class JitPassage.ExtBranch

java.lang.Object
java.lang.Record
ghidra.pcode.emu.jit.JitPassage.ExtBranch
Record Components:
from - see from()
to - the target address-context pair
All Implemented Interfaces:
JitPassage.Branch
Enclosing class:
JitPassage

public static record JitPassage.ExtBranch(PcodeOp from, JitPassage.AddrCtx to) extends Record implements JitPassage.Branch
A branch to an address (and context value) not in the same passage

When execution encounters this branch, the run method sets the emulator's program counter and context to the branch target and returns the appropriate entry point for further execution. Note that this branch type is used by the decoder to track queued decode seeds as well. External branches that get decoded are changed into internal branches.

  • Constructor Details

    • ExtBranch

      public ExtBranch(PcodeOp from, JitPassage.AddrCtx to)
      Creates an instance of a ExtBranch record class.
      Parameters:
      from - the value for the from record component
      to - the value for the to record component
  • Method Details

    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with Objects::equals(Object,Object).
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • from

      public PcodeOp from()
      Returns the value of the from record component.
      Specified by:
      from in interface JitPassage.Branch
      Returns:
      the value of the from record component
    • to

      public JitPassage.AddrCtx to()
      Returns the value of the to record component.
      Returns:
      the value of the to record component