Paweł Bylica
|
057611fbb3
|
Extend JIT interface to allow only compilation of EVM code.
Make code availability checking thread-safe.
|
10 years ago |
Paweł Bylica
|
51bacd2525
|
Separate compile and execute jobs in JIT.
|
10 years ago |
Paweł Bylica
|
957f4558c4
|
Cleanups.
|
10 years ago |
Paweł Bylica
|
e4456e34fa
|
Cleanups.
|
10 years ago |
Paweł Bylica
|
f7c87331b4
|
Another LLVM bug workaround.
|
10 years ago |
Paweł Bylica
|
90a03ec025
|
Better BYTE fix.
|
10 years ago |
Paweł Bylica
|
1d4ea99453
|
Fix for incorrect BYTE instruction results.
It is actually a LLVM bug workaround.
|
10 years ago |
Paweł Bylica
|
6963d9f6df
|
Do not compute code hash twice in VM test engine.
|
10 years ago |
Paweł Bylica
|
714e122718
|
Cleanup issues reported by clang.
|
10 years ago |
Paweł Bylica
|
3776d189a2
|
Update llvm::IRBuilder::CreateCall to new API version.
Buildbot bump.
|
10 years ago |
Paweł Bylica
|
65406afd16
|
Suppress LLVM compile warnings.
|
10 years ago |
Paweł Bylica
|
50a827354e
|
Disable some warnings in LLVM headers for GCC/clang compilers.
|
10 years ago |
Paweł Bylica
|
3e7163a1ac
|
Release aquired arg allocas in Ext::calldataload.
|
10 years ago |
Paweł Bylica
|
afe4a477a5
|
Remove debug message.
|
10 years ago |
Paweł Bylica
|
fe03309244
|
Skip all STOPs in the end in EVM JIT compiler
|
10 years ago |
Paweł Bylica
|
e5eda3bb5f
|
Disable some warnings in LLVM headers for GCC/clang compilers.
|
10 years ago |
Paweł Bylica
|
787df33341
|
Protect EVM JIT cache with mutex.
Fixes ethereum/cpp-ethereum#2086.
|
10 years ago |
Paweł Bylica
|
9359223e69
|
Remove memory leak detector. Is it not thread-safe.
|
10 years ago |
Paweł Bylica
|
3202abb91e
|
Cleanup unused code.
|
10 years ago |
Paweł Bylica
|
a6ef3f40d1
|
Avoid forbidden function pointer cast.
|
10 years ago |
Paweł Bylica
|
38ffad6530
|
Adjustments for llvm::IRBuilder API changes.
|
10 years ago |
Paweł Bylica
|
81ad029af9
|
MSVC fixes.
|
10 years ago |
Paweł Bylica
|
5f4557eae2
|
EVM JIT C++ interface in one header.
|
10 years ago |
Paweł Bylica
|
8fe2b1a3d6
|
JIT implementation cleanups.
|
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
|
c66a7e49d3
|
Fix cache mode handling.
|
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
|
a0ca973274
|
Enable function inlining optimization.
|
10 years ago |
Paweł Bylica
|
25b080ee87
|
Handle more edge cases in DIV, etc.
|
10 years ago |
Paweł Bylica
|
edfb49e3ef
|
Add protection against hardware division by 0.
|
10 years ago |
Paweł Bylica
|
4992aa21c0
|
Remove unused code
|
10 years ago |
Paweł Bylica
|
499ab22637
|
Remove div by 0 check in udivrem implementation.
|
10 years ago |
Paweł Bylica
|
d8da43e939
|
Lower ADDMOD & MULMOD (limited) to a function call in the LLVM pass after optimization.
|
10 years ago |
Paweł Bylica
|
f1428f804a
|
Add edge DIV/MOD cases. Migrate to new udivrem function.
|
10 years ago |
Paweł Bylica
|
2603d3afbe
|
Lower MOD, SDIV & SMOD to a function call in the LLVM pass after optimization.
|
10 years ago |
Paweł Bylica
|
f7a4e27d46
|
Eliminate dead instructions replaced in AP arithmetic lowering.
|
10 years ago |
Paweł Bylica
|
f72bfb461e
|
Lower DIV to a function call in the LLVM pass after optimization.
|
10 years ago |
Paweł Bylica
|
624677eb42
|
Copy gas counter to local function stack (alloca)
|
10 years ago |
Paweł Bylica
|
9496f645e2
|
Always exit through exit blocks (Stop, Abort, etc).
Fixes ethereum/evmjit#6.
|
10 years ago |
Paweł Bylica
|
854d088da9
|
Unpack runtime data at front. Not used one are removed by DCE pass.
|
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 |
Paweł Bylica
|
d97217dcbc
|
Return divrem results using vector <2 x i256>
|
10 years ago |
Paweł Bylica
|
463025e15d
|
Implementation of MUL workaround in "LLVM pass" way.
|
10 years ago |
Paweł Bylica
|
f1d8fbefbf
|
Move calldataload procedure to LLVM IR
|
10 years ago |
Paweł Bylica
|
228db6bc07
|
Remove unused stuff
|
10 years ago |
Paweł Bylica
|
f846adf915
|
Revert not needed LLVM workarounds
|
10 years ago |
Paweł Bylica
|
2b9eab188a
|
Remove some LLVM 3.5 bugs workarounds
|
10 years ago |