20 Commits (547ca3870d541d844bc6dcba3dc275889755249c)

Author SHA1 Message Date
artur-zawlocki 547ca3870d Propagation of values between basic blocks' local stacks [#80895676] 10 years ago
artur-zawlocki d28139677b Refactored local stack 10 years ago
artur-zawlocki 044e83860a Fixed bug in phi node rewriting 10 years ago
artur-zawlocki 5a8ba36fe5 added assert in linkBasicBlocks() 10 years ago
artur-zawlocki 080cf20f84 Handling pop() from the empty EVM stack. 10 years ago
Paweł Bylica d95083ade4 Remove unreachable basic blocks before "linking" 10 years ago
Paweł Bylica a4416e563d Remove unreachable basic blocks before "linking" 10 years ago
artur-zawlocki 0a9e0f587f Propagation of values between basic blocks (and the stack): initial implementation (probably buggy, but simple cases work). 10 years ago
Paweł Bylica c7eac0d23c Fix SHA3 instruction :) 10 years ago
Paweł Bylica 51fc9adfab Fix compiling empty bytecode 10 years ago
Paweł Bylica c97ca249a0 Throw exception if EVM program is not jitable instead of terminating to make tests going 10 years ago
Paweł Bylica 607458b193 BYTE reimplementation 10 years ago
Paweł Bylica 52ba848c18 Add support for direct jump outside the code - terminates with STOP 10 years ago
Paweł Bylica 6c3af96a40 Limit debug output 10 years ago
Paweł Bylica de8deab6ff Fix for invalid jump table basic block 10 years ago
Paweł Bylica 0f4c8eb63f VM execution wrapper with similar interface as libevm/VM 10 years ago
Paweł Bylica 7df24fad4a Move JIT compiler project to library 10 years ago
artur-zawlocki f062fd0165 Dumping CFG to .dot: showing indirect jumps with dashed lines 10 years ago
artur-zawlocki f233122943 Added dumping of CFG to a .dot file 10 years ago
Paweł Bylica c83739e9dc Get IR module from IR builder 10 years ago
Paweł Bylica 5e13d593be Introducing CompilerHelper - a base class for... compiler helper classes like Memory, GasMeter, etc. 10 years ago
Paweł Bylica bb51b3476c Cleanup block terminator generation 10 years ago
Paweł Bylica 1463897efb Basic block compilation in separated function 10 years ago
Paweł Bylica e094ba9e67 Placing IRBuilder in Compiler class (for future refactoring) 10 years ago
Paweł Bylica 5586ff5bdc Some changes about final/stop block 10 years ago
Paweł Bylica 07f6bbffe5 Removing unnecessary `dev` name prefixes 10 years ago
Paweł Bylica 11bf67b2d8 Eliminating some `using namespace` 10 years ago
Paweł Bylica a2da7c91c8 Change namespace from `evmcc` to `dev::eth::jit` 10 years ago
Paweł Bylica f1ea6c9257 Macros grouping PUSH, DUP and SWAP switch cases 10 years ago
Paweł Bylica ec2013d5c9 Working longjmp solution 10 years ago
artur-zawlocki 00a872ec98 * codegen for CODECALL 10 years ago
artur-zawlocki 564a593bbe Codegen for EXTCODESIZE & EXTCODECOPY 10 years ago
Paweł Bylica 7fcf24d3ac Trying to implement "exceptions" with longjmp (does not work on Windows 64bit at least) 10 years ago
Paweł Bylica c57de781e4 Use longjmp to return OutOfGas code from main function (WIP) 10 years ago
Paweł Bylica 00e5afc1a5 Change a bit the implementation of GAS instruction 10 years ago
Paweł Bylica 0d679f0c73 Count gas cost for SSTORE instruction 10 years ago
artur-zawlocki df932921dc Codegen for CODECOPY. 10 years ago
Paweł Bylica 1c70f3d099 Prealloc memory and count gas for CALL instruction 10 years ago
Paweł Bylica 7d674765a4 Prealloc memory and count gas for SHA3 and CREATE instructions 10 years ago
artur-zawlocki 42b14ae334 Fixes in CALLDATACOPY 10 years ago
artur-zawlocki 0d9740514a Initial implementation for CALLDATACOPY 10 years ago
Paweł Bylica 01ca987093 Give back an amount of gas not used by CALL instructions 10 years ago
Paweł Bylica fb87a0b2ab Count gas for CALL instructions 10 years ago
Paweł Bylica 7494fdba7a Use Constant::get() interface to create LLVM constants 10 years ago
Paweł Bylica 7a89751433 Change the way compiled program returns 10 years ago
artur-zawlocki 6caff31697 Implemented ADDMOD, MULMOD and GAS [Delivers #80566276] 10 years ago
artur-zawlocki 9b3c446578 Codegen for GAS 10 years ago
Paweł Bylica 3a2596960b Report error if static-analysed stack is too small 10 years ago
Paweł Bylica 9bdfd59b6f Change basic block linking order to get better results (still not perfect) 10 years ago
artur-zawlocki 6e2bcefaca Implemented indirect JUMPI and fixes for JUMPs to invalid PCs 10 years ago