Paweł Bylica
299fc12a58
Resolve jumps after code compilation.
10 years ago
Paweł Bylica
93f6e0abe7
Link consecutive basic blocks after all blocks are compiled.
10 years ago
Paweł Bylica
215ea7dde5
Remove vector of basic blocks from Compiler.
10 years ago
Paweł Bylica
6123352295
Replace map of basic blocks with vector.
10 years ago
Paweł Bylica
b44d4846f5
Use llvm::SwitchInstr as a jump dest map.
10 years ago
Paweł Bylica
f76d634769
Change the way Jump Table is created and filled.
10 years ago
Paweł Bylica
f4b79cfee7
Do not remove dead blocks during compilation.
10 years ago
Paweł Bylica
1e926fe6bc
Move fields from BasicBlock to LocalStack. Remove dump() functions.
10 years ago
Paweł Bylica
fcacf6e3a2
Remove code doing stack optimization with PHI nodes.
10 years ago
Paweł Bylica
b604dfefe6
Reimplementation of local stack handling during basic block compilation.
This change removed the intermediate stage when PHI nodes are inserted in place of items fetched from global stack. PHi stage requires information about other basic block therefore must be postponed to the point when all basic blocks has been compiled. In the same time this optimization has not been very effective.
10 years ago
Paweł Bylica
c80ded8f97
Move LocalStack out of BasicBlock.
10 years ago
Paweł Bylica
947b9e9664
Replace "bad jump" exit with "abort" exit.
10 years ago
Paweł Bylica
5046dd4bb0
EVM JIT C++ interface in one header.
10 years ago
Paweł Bylica
08d94e0f52
Always exit through exit blocks (Stop, Abort, etc).
Fixes ethereum/evmjit#6 .
10 years ago
Paweł Bylica
681ba24d33
Free memory allocated for dynamic stack
10 years ago
Gav Wood
e185d9a117
Add EVMJIT.
10 years ago
Paweł Bylica
3365f3f438
#include cleanups
10 years ago
Paweł Bylica
01dffe28f3
Add first instruction index to BasicBlock
10 years ago
Paweł Bylica
932ce6650c
Replacing code references (usually vector<byte>&) with code_iterator pair. Code is now extracted from RuntimeData what removes copy in C interface.
10 years ago
Paweł Bylica
c9ddc4468a
Temporary remove evmjit subtree
10 years ago
Paweł Bylica
9c32e2592c
EVMJIT: cleanups
10 years ago
Paweł Bylica
272a0bd6fc
EVMJIT: Better object cache and other improvements
10 years ago
Paweł Bylica
9e242cae19
EVM JIT update: latest PoC-8 changes, cleanups and improvments
10 years ago