Package ghidra.pcode.emu

# Class BytesPcodeThread

java.lang.Object
ghidra.pcode.emu.DefaultPcodeThread<byte[]>
ghidra.pcode.emu.ModifiedPcodeThread<byte[]>
ghidra.pcode.emu.BytesPcodeThread

All Implemented Interfaces:
  `PcodeThread<byte[]>`

Direct Known Subclasses:
  `JitPcodeThread`

public class BytesPcodeThread extends ModifiedPcodeThread<byte[]>
A simple p-code thread that operates on concrete bytes

For a complete example of a p-code emulator, see `PcodeEmulator`. This is the default thread for that emulator.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class ghidra.pcode.emu.ModifiedPcodeThread

  `ModifiedPcodeThread.GlueEmulate, ModifiedPcodeThread.ModifierUseropLibrary`

  ## Nested classes/interfaces inherited from class ghidra.pcode.emu.DefaultPcodeThread

  `DefaultPcodeThread.PcodeEmulationLibrary<T>, DefaultPcodeThread.PcodeThreadExecutor<T>`

- ## Field Summary

  ### Fields inherited from class ghidra.pcode.emu.ModifiedPcodeThread

  `emulate, modifier`

  ### Fields inherited from class ghidra.pcode.emu.DefaultPcodeThread

  `arithmetic, contextreg, decoder, defaultContext, executor, frame, injects, instruction, language, pc, state`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BytesPcodeThread(String name, AbstractPcodeMachine<byte[]> machine)`
  Construct a new thread

- ## Method Summary

  ### Methods inherited from class ghidra.pcode.emu.ModifiedPcodeThread

  `createModifier, createUseropLibrary, overrideCounter, postExecuteInstruction`

  ### Methods inherited from class ghidra.pcode.emu.DefaultPcodeThread

  `advanceAfterFinished, assertCompletedInstruction, assertMidInstruction, assignContext, beginInstructionOrInject, branchToAddress, checkLoad, checkStore, clearAllInjects, clearInject, createExecutor, createInstructionDecoder, createThreadState, doPluggableInitialization, dropInstruction, executeInstruction, finishInstruction, getArithmetic, getContext, getContextAfterCommits, getContextAfterCommits, getCounter, getExecutor, getFrame, getInject, getInstruction, getLanguage, getMachine, getName, getState, getUseropLibrary, inject, isSuspended, onMissingUseropDef, overrideContext, overrideContextWithDefault, preExecuteInstruction, reInitialize, run, setCounter, setSuspended, skipInstruction, skipPcodeOp, stepInstruction, stepPatch, stepPcodeOp, stepped, swi, writeContext, writeCounter`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface ghidra.pcode.emu.PcodeThread

  `stepInstruction, stepPcodeOp`

- ## Constructor Details

  - ### BytesPcodeThread

    public BytesPcodeThread(String name, AbstractPcodeMachine<byte[]> machine)
    Construct a new thread
    Parameters:
      `name` - the thread's name
      `machine` - the machine to which the thread belongs
    See Also:
      - `PcodeMachine.newThread(String)`