Ethereum Just in Time Virtual Machine (Evacuated from NSA/Microsoft Github)

anonymous 76e5b4c6e9 working building preliminary debian package 6 tahun lalu
cmake 18c9072dc8 ProjectLLVM: Do not build LLVM tools 7 tahun lalu
debian 76e5b4c6e9 working building preliminary debian package 6 tahun lalu
docker 9fe95fc390 PoC of building inside docker container 8 tahun lalu
docs 53bc278de7 EVM-C: Extend docs of evm_update_fn 8 tahun lalu
examples 6419844268 Do not pollute the header with examplevm_create() 6 tahun lalu
include 6419844268 Do not pollute the header with examplevm_create() 6 tahun lalu
libevmjit cb445d28c0 EVM-C: Remove get_code_status() 6 tahun lalu
scripts 454d85498b EVM-C: Add examples of evm_result usages 7 tahun lalu
tests 3cf4dcf1d3 evmjit-standalone: Link with ncurses on Linux 7 tahun lalu
.clang-format 1b37c05a28 Copy .clang-format from cpp-ethereum 6 tahun lalu
.gitignore cdc03a9638 Improve LLVM build experience on CIs 7 tahun lalu
.travis.yml a771ba4477 Travis CI: Add new GitHub token 7 tahun lalu
CMakeLists.txt 881e737970 CMake: Remove MAP_IMPORTED_CONFIG mapping 7 tahun lalu
LICENSE.md 26e85c2c3d Create LICENSE.md 9 tahun lalu
README.md 541f2f799b Explain the documentation in the README 6 tahun lalu
appveyor.yml cd8f81f852 Improve LLVM project configuration 7 tahun lalu
circle.yml a901a93a58 Circle CI: Bump deps cache id 6 tahun lalu
wercker.yml 5009d8abe9 Wercker CI (#72) 8 tahun lalu

README.md

The Ethereum EVM JIT

EVM JIT is a library for just-in-time compilation of Ethereum EVM code. It can be used to substitute classic interpreter-like EVM Virtual Machine in Ethereum client.

Build

The EVMJIT project uses CMake tool to configure the build and depends only on the LLVM library. LLVM installation is not needed, because CMake will download and build LLVM from source. However, LLVM requires Python interpreter to be built.

mkdir build
cd build
cmake ..
cmake --build . --config RelWithDebInfo

Options

Options to evmjit library can be passed by environmental variable, e.g. EVMJIT="-help" testeth --jit.

Documentation

The documentation can be built using Doxygen:

doxygen docs/Doxyfile

And it is also available online to view.