Paweł Bylica
e4456e34fa
Cleanups.
10 years ago
arkpar
8aa722658d
codeHash in ExtVM
10 years ago
winsvega
0871668ebf
evmJit warnings fix
10 years ago
Paweł Bylica
17d7d71554
Kill steps limit option in VM.
10 years ago
Paweł Bylica
565744c9e3
Change the way execution results are collected.
Changes handling ExecutionResult by Executive. From now execution results are collected on if a storage for results (ExecutionResult) is provided to an Executiove instance up front. This change allow better output management for calls - VM interface improved.
10 years ago
Paweł Bylica
04a123e9a1
Change VM interface to return a copy of output.
10 years ago
Paweł Bylica
5d4fbd4c44
Apply recent VM interface changes to EVM JIT.
10 years ago
Gav Wood
c8c2e18dc7
Move non-cryptopp dependent stuff into devcore.
10 years ago
Paweł Bylica
b56cef3b1e
Better eth <-> jit integer conversions.
10 years ago
Paweł Bylica
5f4557eae2
EVM JIT C++ interface in one header.
10 years ago
Paweł Bylica
9cc8c7895e
Code migration.
10 years ago
Paweł Bylica
ccdb74eb0b
Code migration.
10 years ago
Paweł Bylica
b8fb3a138c
Better style of ExecutionEngine initialization. Some eth::jit -> evmjit namespace transfers.
10 years ago
Paweł Bylica
c56858f498
Merge ExecutionContext and Runtime classes
10 years ago
Paweł Bylica
e0c176f377
Extract execution context from ExecutionEngine::run.
10 years ago
Paweł Bylica
d921989696
VM cleanups
10 years ago
Paweł Bylica
dd3f1fe254
Remove gas counter from VM interface (VMFace)
10 years ago
Paweł Bylica
9c97f20674
Allow selecting VM kind manually
10 years ago
Paweł Bylica
9ca47fe0cf
JIT class: the EVM JIT facade.
The JIT class added, future public EVM JIT library interface. Currently it supports queries about EVM code status.
10 years ago
chriseth
c3fe9ad112
Move assembly related files to libevmasm and Params.h/.cpp to libevmcore.
10 years ago
chriseth
d6f4eb1eef
Statically compile libevmjit-cpp.
10 years ago
Paweł Bylica
0ab3995297
Do not subbalance twice
VM does not need to subbalance a caller. Balance tranfer is taken care on higher level.
10 years ago
Gav Wood
be4e3e0025
Extensive pathway for reporting transaction execution results.
10 years ago
Paweł Bylica
19d6fd5a51
Style corrections, optimized but notworking mul256 implementation removed
10 years ago
Paweł Bylica
02316e3c21
PoC-9 call depth handling update
10 years ago
Paweł Bylica
4954ae2cda
Update gas costs for PoC-9: changes in CALL gas price support
10 years ago
Paweł Bylica
b7d8f9851f
Update cmake scripts, use static list of source files
10 years ago
CJentzsch
f076e3e073
fix evmjit build
10 years ago
Paweł Bylica
7b4a663c4f
Correct and tested EVM JIT to Interpreter fallback in case of high gas limit
10 years ago
Gav Wood
2c6b18f01b
Add EVMJIT.
10 years ago
Paweł Bylica
b746ef7b42
Fix/disable warnings in CPP bridge
10 years ago
Paweł Bylica
ae7919722a
Workaround for linker removing JIT callback functions
10 years ago
Paweł Bylica
f281e5ea26
Workaround for linker removing JIT callback functions
10 years ago
Paweł Bylica
3cbe1186cc
Pass gas counter to env_call as int64*
10 years ago
Paweł Bylica
494e96a89c
Pass gas counter to env_create as int64*
10 years ago
Paweł Bylica
c633e62102
Gas counting changes: allow memory words counter not greater than gas max (int64 max)
10 years ago
Paweł Bylica
e8e9490b56
Disable RTTI for evmjit library
10 years ago
Paweł Bylica
c914c877e3
Add code hash to RuntimeData. JIT is using it as an code identifier (do not need to invent any internal hashing)
10 years ago
Paweł Bylica
5e29eef349
Replacing code references (usually vector<byte>&) with code_iterator pair. Code is now extracted from RuntimeData what removes copy in C interface.
10 years ago
Paweł Bylica
1b449d357e
Fallback to interpreter VM in case of JIT requirements unmet
10 years ago
Paweł Bylica
0f294ec820
Reorder JIT runtime data fields
10 years ago
Paweł Bylica
3e8c30d2fb
Flatten JIT RuntimeData
10 years ago
Paweł Bylica
06a3b8196d
Keep timestamp and block number as uint64 types
10 years ago
Paweł Bylica
d1d68505da
Do not accept contract code with gas greater than 2^63. Keep gas counter in int64 type.
10 years ago
Paweł Bylica
06a700c060
Use uint64 type for call data size
10 years ago
Paweł Bylica
a751baadcb
Use uint64 type for code size
10 years ago
Paweł Bylica
25d8873440
Merge commit '3dcf30463b961e3fe47b48b2024bbf3d5b5ce675' into evmjit
Conflicts:
evmjit/CMakeLists.txt
evmjit/libevmjit-cpp/CMakeLists.txt
evmjit/libevmjit-cpp/Env.cpp
evmjit/libevmjit-cpp/JitVM.cpp
evmjit/libevmjit/Arith256.cpp
evmjit/libevmjit/BasicBlock.cpp
evmjit/libevmjit/BasicBlock.h
evmjit/libevmjit/CMakeLists.txt
evmjit/libevmjit/Cache.cpp
evmjit/libevmjit/Common.h
evmjit/libevmjit/Compiler.cpp
evmjit/libevmjit/ExecutionEngine.cpp
evmjit/libevmjit/ExecutionEngine.h
evmjit/libevmjit/Ext.cpp
evmjit/libevmjit/Ext.h
evmjit/libevmjit/Runtime.cpp
evmjit/libevmjit/Runtime.h
evmjit/libevmjit/RuntimeData.h
evmjit/libevmjit/Utils.cpp
evmjit/libevmjit/Utils.h
evmjit/libevmjit/interface.cpp
10 years ago
Paweł Bylica
3dcf30463b
Removing boost dependency from libevmjit
10 years ago
Paweł Bylica
a21362a7f8
Removing boost dependency from libevmjit
10 years ago
Paweł Bylica
003ba383c3
Do not copy return data inside JIT
10 years ago