Paweł Bylica
b7f31afb7a
Cleanup LLVM types usage
10 years ago
Paweł Bylica
28d6dd7930
Decrement global gas value by instruction step cost
[#79942174 ]
10 years ago
Paweł Bylica
d3f59f6de4
Introducing GasMeter
10 years ago
Paweł Bylica
7f8848744d
EXP instruction.
[Delivers #79736422 ]
10 years ago
Paweł Bylica
dafa5bc890
Make the Stack an integral part of BasicBlock
10 years ago
Paweł Bylica
58c5950731
JUMP test in assembly
10 years ago
Paweł Bylica
bb1954089c
Cleanup Compiler
10 years ago
Paweł Bylica
b273b863b1
Provide end instruction to basic block
10 years ago
Paweł Bylica
16ea3bf543
Improve basic blocks linking implementation
10 years ago
Paweł Bylica
7a3f3f9079
Remove external stack
10 years ago
Paweł Bylica
1cbb9d57aa
Stack cleanups
10 years ago
Paweł Bylica
a338b88588
Cleanups: move basic block linking to separated function
10 years ago
Paweł Bylica
577438e243
Correct the order of basic blocks
10 years ago
Paweł Bylica
e52d421955
Link basic blocks with phi functions
[#80113672 ]
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
Paweł Bylica
cc51bfded6
Pop entry state of basic block from external stack, push exit state to external stack.
[Delivers #80113346 ]
10 years ago
Paweł Bylica
33e36ce6cc
Basic stack implementation for basic block. Values on stack are not preserved between basic blocks (jumps)
10 years ago
Paweł Bylica
3cba3a2dca
SHA3 instruction
[Delivers #79534494 ]
10 years ago
Paweł Bylica
f230c8259b
SUICIDE instruction
[Delivers #79510898 ]
10 years ago
Paweł Bylica
3f5785829e
CALL instruction. Still needs gas counting and callback support.
[Delivers #79510898 ]
10 years ago
Paweł Bylica
3942b2ed28
CREATE instruction. Still needs some work with ExtVM interface.
[#79510898 ]
10 years ago
artur-zawlocki
a1a195bce3
Merge branch 'develop-evmcc' of github.com:imapp-pl/ethereum into develop-evmcc
10 years ago
artur-zawlocki
f075b7b227
- fixes for RETURN and STOP
- codegen for SLT, SGT, EQ and NEG
10 years ago
Paweł Bylica
b519b73d94
Stack functions simplified
10 years ago
Paweł Bylica
7bee86aa4b
Runtime class that inits and keeps stack, memory and ExtVM interface
10 years ago
Paweł Bylica
320add062e
BYTE instruction implementation (with bug on BYTE 0)
10 years ago
Paweł Bylica
710b734236
TODO: implement BYTE
10 years ago
Paweł Bylica
48897f42c8
Bitwise operators: AND, OR, XOR
10 years ago
Paweł Bylica
c002d9b843
PC instructions
10 years ago
Paweł Bylica
20cd698cf8
Merge branch 'develop-evmcc' of https://github.com/imapp-pl/ethereum into develop-evmcc
10 years ago
Paweł Bylica
09a9f1064f
Block Information instructions: PREVHASH, COINBASE, TIMESTAMP, NUMBER, DIFFICULTY, GASLIMIT
10 years ago
artur-zawlocki
9289508dfa
Merge branch 'develop-evmcc' of github.com:imapp-pl/ethereum into develop-evmcc
10 years ago
artur-zawlocki
48d4294d88
- implemented LT, GT
- new tests for jumps and comparisons
10 years ago
Paweł Bylica
954300fce1
Merge branch 'develop-evmcc' of https://github.com/imapp-pl/ethereum into develop-evmcc
10 years ago
Paweł Bylica
fbe97fd3e1
BALANCE
10 years ago
artur-zawlocki
8b625fa954
fixed implementation of NOT
10 years ago
artur-zawlocki
fa76d7a4a0
fixes for JUMP/JUMPI (generating final basic block)
implementation of NOT
10 years ago
artur-zawlocki
ad2c4c4274
fixed implementation of JUMPI (cond casted to bool)
10 years ago
artur-zawlocki
1d17da1e5f
Added Module* constructor argument to Memory and Ext.
10 years ago
artur-zawlocki
b730bdc511
Merge branch 'develop-evmcc' of github.com:imapp-pl/ethereum into develop-evmcc
Conflicts:
evmcc/Compiler.cpp
10 years ago
artur-zawlocki
0b8ba6d2e4
initial implementation of JUMP/JUMPI (untested)
10 years ago
Paweł Bylica
edf192b52d
Print returned memory to standard output
10 years ago
Paweł Bylica
d073af7754
Merge branch 'develop-evmcc' of https://github.com/imapp-pl/ethereum into develop-evmcc
10 years ago
Paweł Bylica
748ee0fe8d
Implementing RETURN and STOP instructions
10 years ago
artur-zawlocki
eea755cfc6
fixed bug in memory handling
10 years ago
artur-zawlocki
e1abb20f9b
Merge branch 'develop-evmcc' of github.com:imapp-pl/ethereum into develop-evmcc
10 years ago
artur-zawlocki
00f993929f
Implemented MLOAD, MSTORE, MSTORE8 and MSIZE
10 years ago
Paweł Bylica
b9cda13a9a
Push call data on stack - CALLDATALOAD
10 years ago
Paweł Bylica
fcde2f3d22
Accessing Ext static data: CALLER, ORIGIN, CALLVALUE, CALLDATASIZE, GASPRICE
10 years ago
Paweł Bylica
ac795c481b
Send Ext static data to running contract. ADDRESS instruction
10 years ago