artur-zawlocki
d5ddbfadbb
Added missing changes [ #79450108 ]
10 years ago
Paweł Bylica
b579c70643
Place current gas counter value in RuntimeData
10 years ago
artur-zawlocki
547ca3870d
Propagation of values between basic blocks' local stacks [ #80895676 ]
10 years ago
artur-zawlocki
d28139677b
Refactored local stack
[#81180320 ]
10 years ago
artur-zawlocki
0a9e0f587f
Propagation of values between basic blocks (and the stack): initial implementation (probably buggy, but simple cases work).
[#80895676 ]
10 years ago
Paweł Bylica
52ba848c18
Add support for direct jump outside the code - terminates with STOP
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
f233122943
Added dumping of CFG to a .dot file
[Delivers #80816506 ]
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
[#80021262 ]
10 years ago
Paweł Bylica
a2da7c91c8
Change namespace from `evmcc` to `dev::eth::jit`
[#80021262 ]
10 years ago
Paweł Bylica
c57de781e4
Use longjmp to return OutOfGas code from main function (WIP)
[#80660432 ]
10 years ago
artur-zawlocki
fd7069e9af
Indirect jump: jump table generated in separate bblock.
10 years ago
artur-zawlocki
2b36803c96
Implementing JUMP/JUMPDEST (work in progress)
10 years ago
Paweł Bylica
b273b863b1
Provide end instruction to basic block
10 years ago
Paweł Bylica
a338b88588
Cleanups: move basic block linking to separated function
10 years ago
Paweł Bylica
0961908efa
Introducing BasicBlock class.
It is a wrapper for llvm::BasicBlock to provide additional information needed by EVM compiler. For now the order of basic blocks might not match bytecode.
[#80113672 ]
10 years ago
artur-zawlocki
0b8ba6d2e4
initial implementation of JUMP/JUMPI (untested)
10 years ago
artur-zawlocki
68f15f91a0
initial implementation of memory
10 years ago
Paweł Bylica
f124be65b7
Implementation of ExecutionEngine with LLVM MCJIT
10 years ago
Paweł Bylica
e33fdeab21
Remove public LLVM dependency in Compiler
10 years ago
Paweł Bylica
f5eda1f1b3
Moving Compiler to separated files
10 years ago