467 Commits (5d757b198c90839e61f451ea51d0d42e99b63b35)

Author SHA1 Message Date
Paweł Bylica 057611fbb3 Extend JIT interface to allow only compilation of EVM code. 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. 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. 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. 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). 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. 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