Paweł Bylica
5470faf9ec
Count gas for additional memory
[#79942174 ]
10 years ago
Paweł Bylica
d6e6a5f558
MSIZE test
10 years ago
Paweł Bylica
0128f09065
Wrong resize condition fixed
[Delivers #80191662 ]
10 years ago
Paweł Bylica
4f871447a3
mload function added as implementation of MLOAD
[#80191662 ]
10 years ago
Paweł Bylica
5f1ea8f832
store8 function added as implementation of MSTORE8
[#80191662 ]
10 years ago
Paweł Bylica
f5a0975b4a
Use mem.store as implementation of MSTORE
[#80191662 ]
10 years ago
Paweł Bylica
f825a6020f
Generate mem.store function and dependencies (currently unused)
[#80191662 ]
10 years ago
Paweł Bylica
7a7d4e33e0
Fix for finding jumpTableBlock
10 years ago
Paweł Bylica
d6915b4d0b
Renames & comments
10 years ago
artur-zawlocki
ad43b92d97
Merge branch 'develop-evmcc' of github.com:imapp-pl/ethereum into develop-evmcc
10 years ago
artur-zawlocki
fd7069e9af
Indirect jump: jump table generated in separate bblock.
10 years ago
Paweł Bylica
09a5899adc
Fix stack swap or dup not generating PHI nodes
10 years ago
Paweł Bylica
973e0a2204
Merge branch 'develop-evmcc' of https://github.com/imapp-pl/ethereum into develop-evmcc
10 years ago
artur-zawlocki
52d1ceb198
test cases for jumps
10 years ago
Paweł Bylica
5dd30376d6
Merge branch 'develop-evmcc' of https://github.com/imapp-pl/ethereum into develop-evmcc
10 years ago
Paweł Bylica
cfb226ba5f
Group gas counting into block of instructions called cost-block.
[#79942174 ]
10 years ago
artur-zawlocki
dab29a94e7
Merge branch 'develop-evmcc' of github.com:imapp-pl/ethereum into develop-evmcc
Conflicts:
evmcc/Compiler.cpp
10 years ago
artur-zawlocki
67789404b0
test cases for JUMP
10 years ago
artur-zawlocki
2b36803c96
Implementing JUMP/JUMPDEST (work in progress)
10 years ago
Paweł Bylica
e42217d5bc
Disable gas checking for now (does not work and makes IR code hard to read)
[#79942174 ]
10 years ago
Paweł Bylica
04cf0cfcea
Generate gas checking function
10 years ago
Paweł Bylica
97644d660a
Cleanup LLVM types usage
10 years ago
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