Gav Wood
ae0205796c
JITEVM fixes.
10 years ago
Gav Wood
9f756124b0
First draft at splitting State.
Continuation of State split.
libethereum building again.
Compile fixes galore.
Remove a lot of code redundancy.
mix using new state/block classes
10 years ago
Paweł Bylica
2565fe1fa7
Fix EVM JIT stack limit checking.
Tests inlcuded.
10 years ago
Paweł Bylica
6e75177190
Fix MSVC problems with decltype()
10 years ago
Paweł Bylica
b8e969093e
Reimplement InsertPointGuard to avoid LLVM ABI incompatibility.
In general, the NDEBUG flag should match cpp-ethereum and LLVM builds. But this is hard to satisfy as we usually have one system-wide build of LLVM and different builds of cpp-ethereum. This ABI incompatibility hit OSX only in release builds as LLVM is built by homebrew with assertions by default.
10 years ago
Paweł Bylica
1d4eeb3a66
Fix evmjit Windows exports.
10 years ago
Paweł Bylica
e1634a9dcb
Clean up evmjit cmake files. Assign compiler flags to target.
10 years ago
Paweł Bylica
a9024e5e90
Set EVM JIT version in cmake script.
10 years ago
Gav Wood
e14d000bea
All fields of BlockInfo now private.
10 years ago
Gav Wood
f693ac0cc4
All fields of BlockInfo now private.
10 years ago
Gav Wood
ff2f952184
All fields of BlockInfo now private.
10 years ago
Gav Wood
1e6bf809b4
All fields of BlockInfo now private.
10 years ago
Gav Wood
5ee3e8e5fc
All fields of BlockInfo now private.
10 years ago
arkpar
e7f34beb45
fixed eth_copy_dlls
reverted libsecp256k1 changes
10 years ago
arkpar
63ef6a74f9
reverted libsecp256k1 changes
10 years ago
arkpar
016ce6964f
copy evmjit dll to output on windows
10 years ago
Gav Wood
487349bf09
All fields of BlockInfo now private.
10 years ago
Paweł Bylica
4039227faa
Extend JIT interface to allow only compilation of EVM code.
Make code availability checking thread-safe.
10 years ago
Paweł Bylica
d036c6dc16
Separate compile and execute jobs in JIT.
10 years ago
Paweł Bylica
9d59ebb645
Cleanups.
10 years ago
Paweł Bylica
b4ee363394
Cleanups.
10 years ago
Paweł Bylica
ffc416e97e
Another LLVM bug workaround.
10 years ago
Paweł Bylica
02c2829677
Better BYTE fix.
10 years ago
Paweł Bylica
6d7350f3ed
Fix for incorrect BYTE instruction results.
It is actually a LLVM bug workaround.
10 years ago
Paweł Bylica
773c2303d8
Do not compute code hash twice in VM test engine.
10 years ago
Paweł Bylica
b2345b982b
Cleanup issues reported by clang.
10 years ago
Paweł Bylica
efd1ff7bb5
Update llvm::IRBuilder::CreateCall to new API version.
Buildbot bump.
10 years ago
Paweł Bylica
4b5a036a6b
Suppress LLVM compile warnings.
10 years ago
Paweł Bylica
7a276c2eee
Disable some warnings in LLVM headers for GCC/clang compilers.
10 years ago
Paweł Bylica
3f1944141c
Release aquired arg allocas in Ext::calldataload.
10 years ago
Paweł Bylica
f866a3ab08
Remove debug message.
10 years ago
Paweł Bylica
62af7a08a1
Skip all STOPs in the end in EVM JIT compiler
10 years ago
Paweł Bylica
17f66be28a
Disable some warnings in LLVM headers for GCC/clang compilers.
10 years ago
Paweł Bylica
8b747d165c
Protect EVM JIT cache with mutex.
Fixes ethereum/cpp-ethereum#2086 .
10 years ago
Paweł Bylica
af95ae6a2d
Remove memory leak detector. Is it not thread-safe.
10 years ago
Paweł Bylica
f183ac4fbb
Cleanup unused code.
10 years ago
Paweł Bylica
465179e6f9
Avoid forbidden function pointer cast.
10 years ago
Paweł Bylica
a53d50e9e5
Adjustments for llvm::IRBuilder API changes.
10 years ago
Paweł Bylica
073284feb0
MSVC fixes.
10 years ago
Paweł Bylica
5046dd4bb0
EVM JIT C++ interface in one header.
10 years ago
Paweł Bylica
b8a66c7f3e
JIT implementation cleanups.
10 years ago
Paweł Bylica
bcc0cfd055
Code migration.
10 years ago
Paweł Bylica
8e4881bcd0
Code migration.
10 years ago
Paweł Bylica
75e4e34647
Better style of ExecutionEngine initialization. Some eth::jit -> evmjit namespace transfers.
10 years ago
Paweł Bylica
d43991723f
Fix cache mode handling.
10 years ago
Paweł Bylica
3cb8f3a4b2
Merge ExecutionContext and Runtime classes
10 years ago
Paweł Bylica
b96d6ff088
Extract execution context from ExecutionEngine::run.
10 years ago
Paweł Bylica
9b66cea1c8
Enable function inlining optimization.
10 years ago
Paweł Bylica
002d9a9d69
Handle more edge cases in DIV, etc.
10 years ago
Paweł Bylica
f19c7c4981
Add protection against hardware division by 0.
10 years ago