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

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

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.