17 Commits (57a8935d876253e7f7866818c987042ce8fb8371)

Author SHA1 Message Date
artur-zawlocki 12ccd5d44f added assert in linkBasicBlocks() 11 years ago
artur-zawlocki baf935b31c Handling pop() from the empty EVM stack. 11 years ago
Paweł Bylica 5eeb082ae0 Remove unreachable basic blocks before "linking" 11 years ago
Paweł Bylica ca01603388 Remove unreachable basic blocks before "linking" 11 years ago
artur-zawlocki 71ccd3f353 Propagation of values between basic blocks (and the stack): initial implementation (probably buggy, but simple cases work). 11 years ago
Paweł Bylica b283a07f76 Fix SHA3 instruction :) 11 years ago
Paweł Bylica 79f93faa7d Fix compiling empty bytecode 11 years ago
Paweł Bylica 340a84fbf4 Throw exception if EVM program is not jitable instead of terminating to make tests going 11 years ago
Paweł Bylica e34d69aeb0 BYTE reimplementation 11 years ago
Paweł Bylica 03f4a451aa Add support for direct jump outside the code - terminates with STOP 11 years ago
Paweł Bylica 008953a37c Limit debug output 11 years ago
Paweł Bylica a13a660315 Fix for invalid jump table basic block 11 years ago
Paweł Bylica 9552394cd1 VM execution wrapper with similar interface as libevm/VM 11 years ago
Paweł Bylica a6c58c38d8 Move JIT compiler project to library 11 years ago
artur-zawlocki 92cf0b9ab0 Dumping CFG to .dot: showing indirect jumps with dashed lines 11 years ago
artur-zawlocki cc2809c9b6 Added dumping of CFG to a .dot file 11 years ago
Paweł Bylica cbab654678 Get IR module from IR builder 11 years ago
Paweł Bylica 83642fe9de Introducing CompilerHelper - a base class for... compiler helper classes like Memory, GasMeter, etc. 11 years ago
Paweł Bylica 837f17cea4 Cleanup block terminator generation 11 years ago
Paweł Bylica 1367f89b84 Basic block compilation in separated function 11 years ago
Paweł Bylica 08c7dcc3d2 Placing IRBuilder in Compiler class (for future refactoring) 11 years ago
Paweł Bylica 3beeb4226e Some changes about final/stop block 11 years ago
Paweł Bylica 2c44470e87 Removing unnecessary `dev` name prefixes 11 years ago
Paweł Bylica 91770a2e4d Eliminating some `using namespace` 11 years ago
Paweł Bylica e33be3bbdb Change namespace from `evmcc` to `dev::eth::jit` 11 years ago
Paweł Bylica c019b0394a Macros grouping PUSH, DUP and SWAP switch cases 11 years ago
Paweł Bylica 2909cac50e Working longjmp solution 11 years ago
artur-zawlocki fc9b9f32c9 * codegen for CODECALL 11 years ago
artur-zawlocki 8e93171d3d Codegen for EXTCODESIZE & EXTCODECOPY 11 years ago
Paweł Bylica 8498ab5695 Trying to implement "exceptions" with longjmp (does not work on Windows 64bit at least) 11 years ago
Paweł Bylica 471586cc82 Use longjmp to return OutOfGas code from main function (WIP) 11 years ago
Paweł Bylica 31a07cb1b8 Change a bit the implementation of GAS instruction 11 years ago
Paweł Bylica 01b95883f2 Count gas cost for SSTORE instruction 11 years ago
artur-zawlocki 2e3e764fb5 Codegen for CODECOPY. 11 years ago
Paweł Bylica 52d3a3beb0 Prealloc memory and count gas for CALL instruction 11 years ago
Paweł Bylica 8267b453c7 Prealloc memory and count gas for SHA3 and CREATE instructions 11 years ago
artur-zawlocki 2b383751b4 Fixes in CALLDATACOPY 11 years ago
artur-zawlocki d005896a0b Initial implementation for CALLDATACOPY 11 years ago
Paweł Bylica 2999de9f1a Give back an amount of gas not used by CALL instructions 11 years ago
Paweł Bylica c5c76cdf99 Count gas for CALL instructions 11 years ago
Paweł Bylica 05952064dc Use Constant::get() interface to create LLVM constants 11 years ago
Paweł Bylica f9f08d3223 Change the way compiled program returns 11 years ago
artur-zawlocki 2031240485 Implemented ADDMOD, MULMOD and GAS [Delivers #80566276] 11 years ago
artur-zawlocki 6eb64ddcda Codegen for GAS 11 years ago
Paweł Bylica b56a815d2c Report error if static-analysed stack is too small 11 years ago
Paweł Bylica 3ec44144e5 Change basic block linking order to get better results (still not perfect) 11 years ago
artur-zawlocki 1afcca2d0b Implemented indirect JUMPI and fixes for JUMPs to invalid PCs 11 years ago
Paweł Bylica c0a7d82b21 Always commit cost blocks 11 years ago
Paweł Bylica 48710b5e5c Count gas for additional memory 11 years ago
Paweł Bylica 35605271f1 Fix for finding jumpTableBlock 11 years ago