EIP-4511: Execute Past Semantic Abort

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.