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 |
Paweł Bylica
|
7dd279e64e
|
Remove unused code
|
10 years ago |
Paweł Bylica
|
910732c2cb
|
Remove div by 0 check in udivrem implementation.
|
10 years ago |
Paweł Bylica
|
3b8e2996a5
|
Lower ADDMOD & MULMOD (limited) to a function call in the LLVM pass after optimization.
|
10 years ago |
Paweł Bylica
|
f041e68cfe
|
Add edge DIV/MOD cases. Migrate to new udivrem function.
|
10 years ago |
Paweł Bylica
|
7de220228b
|
Lower MOD, SDIV & SMOD to a function call in the LLVM pass after optimization.
|
10 years ago |
Paweł Bylica
|
03ea86c855
|
Eliminate dead instructions replaced in AP arithmetic lowering.
|
10 years ago |
Paweł Bylica
|
483403cc91
|
Lower DIV to a function call in the LLVM pass after optimization.
|
10 years ago |
Paweł Bylica
|
e659d3e761
|
Copy gas counter to local function stack (alloca)
|
10 years ago |
Paweł Bylica
|
08d94e0f52
|
Always exit through exit blocks (Stop, Abort, etc).
Fixes ethereum/evmjit#6.
|
10 years ago |
Paweł Bylica
|
77f9d13977
|
Unpack runtime data at front. Not used one are removed by DCE pass.
|
10 years ago |
Paweł Bylica
|
898682d04d
|
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 |
Paweł Bylica
|
73cc4e5b97
|
Return divrem results using vector <2 x i256>
|
10 years ago |
Paweł Bylica
|
78c97ea0af
|
Implementation of MUL workaround in "LLVM pass" way.
|
10 years ago |
Paweł Bylica
|
008ca8d4f9
|
Move calldataload procedure to LLVM IR
|
10 years ago |
Paweł Bylica
|
e968c65372
|
Remove unused stuff
|
10 years ago |
Paweł Bylica
|
9aecd10a66
|
Revert not needed LLVM workarounds
|
10 years ago |
Paweł Bylica
|
56c3d18582
|
Remove some LLVM 3.5 bugs workarounds
|
10 years ago |