Allow clients to defer detection and enforcement of EVM revert conditions like out-of-gas, stack-overflow, etc. from the interpretation-step where the condition first applies, to some time later in the same call frame.
By removing these checks from the hot loop of EVM bytecode interpretation, a number of currently-impractical interpreter optimization strategies — such as threaded-code interpretation, or bytecode JIT — become practical.
Hi @tsutsu – not super familiar with these optimization strategies, but I don’t understand why threaded-code interpretation is impractical? evmone uses indirect call threading rather efficiently. There was also a JIT project a while back.