Class Emulate


  • public class Emulate
    extends java.lang.Object
    • Method Detail

      • dispose

        public void dispose()
      • getLanguage

        public Language getLanguage()
      • isInstructionStart

        public boolean isInstructionStart()
      • getExecutionState

        public EmulateExecutionState getExecutionState()
        Returns:
        the current emulator execution state
      • getExecuteAddress

        public Address getExecuteAddress()
      • getLastExecuteAddress

        public Address getLastExecuteAddress()
      • getContextRegisterValue

        public RegisterValue getContextRegisterValue()
        Returns the current context register value. The context value returned reflects its state when the previously executed instruction was parsed/executed. The context value returned will feed into the next instruction to be parsed with its non-flowing bits cleared and any future context state merged in. If no instruction has been executed, the explicitly set context will be returned. A null value is returned if no context register is defined by the language or initial context has not been set.
      • setContextRegisterValue

        public void setContextRegisterValue​(RegisterValue regValue)
        Sets the context register value at the current execute address. The Emulator should not be running when this method is invoked. Only flowing context bits should be set, as non-flowing bits will be cleared prior to parsing on instruction. In addition, any future context state set by the pcode emitter will take precedence over context set using this method. This method is primarily intended to be used to establish the initial context state.
        Parameters:
        regValue -
      • fallthruOp

        public void fallthruOp()
      • executeConditionalBranch

        public void executeConditionalBranch​(PcodeOpRaw op)
      • executeBranch

        public void executeBranch​(PcodeOpRaw op)
      • setExecuteAddress

        public void setExecuteAddress​(Address addr)
      • executeLoad

        public void executeLoad​(PcodeOpRaw op)
      • executeStore

        public void executeStore​(PcodeOpRaw op)
      • executeBranchind

        public void executeBranchind​(PcodeOpRaw op)
      • executeCall

        public void executeCall​(PcodeOpRaw op)
      • executeCallind

        public void executeCallind​(PcodeOpRaw op)
      • executeMultiequal

        public void executeMultiequal​(PcodeOpRaw op)
      • executeIndirect

        public void executeIndirect​(PcodeOpRaw op)