evmone icon indicating copy to clipboard operation
evmone copied to clipboard

Fast Ethereum Virtual Machine implementation

Results 173 evmone issues
Sort by recently updated
recently updated
newest added

Results from my machine (Linux andrew-NUC8i7HNK 5.11.0-25-generic #27-Ubuntu SMP Fri Jul 9 23:06:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux): ``` ------------------------------------------------------------------------------------------------------------ Benchmark Time CPU Iterations ------------------------------------------------------------------------------------------------------------ find_jumpdest_split_random 72.3 ns 72.3...

Most of EVM instruction need to check EVM stack height before execution to report stack overflow/underflow errors. In the current implementation the stack height value is computed by subtracting stack...

optimization

Notice that the jump instructions (`JUMP`, `JUMPI`) always land on `OPX_BEGINBLOCK`. Therefor we can execute the "beginblock" from within the jump instruction and then target the instruction after `OPX_BEGINBLOCK`. The...

https://eips.ethereum.org/EIPS/eip-3855

The SDK can be found here: https://software.intel.com/content/www/us/en/develop/topics/software-guard-extensions/sdk.html The SDK contains installers for various distros, including recent Ubuntu versions, so should we do this task it would make sense installing it...

For quite a long time we considered creating a WebAssembly build, going back as far as when [runevm](https://github.com/axic/runevm) was created. We did try, but since evmone was using exceptions at...

1. Fix the extension of files with runtime code, e.g. `.code` or `.evm`. Currently all files expect `*.inputs` are assumed to contain code. This makes it inconvenient to have other...

## List of optimizations to investigate ### 1. Extend bytecode with 33 zero bytes This requires copying the original code and adding additional 33 zero bytes in the end. The...

This would enable using a much larger variety of inputs for benchmarking, including token contracts, dexes, and #224.

This could be useful as a preparation for geth or other use cases to make it simple for users' to acquire evmone. @chfast what do you think?