Class JitPassage.DecodeErrorPcodeOp

Enclosing class:
JitPassage

public static class JitPassage.DecodeErrorPcodeOp extends JitPassage.DecodedPcodeOp
A synthetic p-code op denoting a decode error

The decoder may encounter several decode errors as it selects and decodes the passage. An instruction is selected because the JIT believes it may be executed by the emulator. (Predicting this and making good selections is a matter of further research.) Encounting a decode error along a possible path is not cause to throw an exception. However; if the emulator does in fact attempt to execute the bytes which it can't decode, then we do throw the exception. This p-code op is synthesized where such decode errors occur, and the translator will generate code that actually throw the exception. Note that the error message is placed in the corresponding JitPassage.ErrBranch.

  • Constructor Details

    • DecodeErrorPcodeOp

      public DecodeErrorPcodeOp(JitPassage.AddrCtx at)
      Construct a p-code op representing an instruction decode error.
      Parameters:
      at - the address and decode context where the error occurred