4039 Commits

Author SHA1 Message Date
Alexander Ivanov
9c056b85de Pass first fixtures tests
Todo

Pass most VM opcode tests that we can (of those that don't depend
too much on porting the whole py-evm)

Simplify a bit the current py-evm-inspired internal loop arch
2018-02-14 18:38:01 +02:00
Alexander Ivanov
3a0596bac7 WIP tests based on fixtures 2018-02-13 19:18:08 +02:00
Alexander Ivanov
63d76e0f37 Improve headers build 2018-02-13 12:42:22 +02:00
Alexander Ivanov
0d31382e3d Work on text fitures and decompiling bytecode 2018-02-12 18:59:50 +02:00
Alexander Ivanov
925eb627a5 Travis badge 2018-02-07 18:50:28 +02:00
Alexander Ivanov
6c013b86aa Travis retest updated docker image 2018-02-07 18:47:14 +02:00
Alexander Ivanov
df41fe270e Add the ttmath wrapper 2018-02-07 18:16:04 +02:00
Alexander Ivanov
35e43fa32e Pass correctly commands to docker command for travis 2018-02-07 13:46:07 +02:00
Alexander Ivanov
e07fc0562d Separate test build from run 2018-02-07 13:15:54 +02:00
Alexander Ivanov
8a7a8f3e06 Travis: try to run sh 2018-02-07 13:07:38 +02:00
Alexander Ivanov
04546ef629 Compile actual test files 2018-02-07 11:58:17 +02:00
Alexander Ivanov
640e668dfe Default yes for nimble travis 2018-02-07 11:55:23 +02:00
Alexander Ivanov
f918692496 Fix memory and gas tests 2018-02-07 11:50:15 +02:00
Alexander Ivanov
211d46e39e Finish the first memory impl and tests, stack tests, fixes validation 2018-02-06 21:20:06 +02:00
Alexander Ivanov
04b1228fbe Add gas meter tests and some helpers unittest 2018-01-31 15:28:25 +02:00
Alexander Ivanov
a233cef719 CodeStream impl and tests, fix byte and string fields 2018-01-31 14:57:05 +02:00
Alexander Ivanov
62f1417439 WIP system instructions 2018-01-30 20:43:41 +02:00
Alexander Ivanov
b9eb74fa26 WIP call (different call variants depending on fork) 2018-01-30 20:12:05 +02:00
Alexander Ivanov
69dccb1520 Invalid op 2018-01-30 16:44:52 +02:00
Alexander Ivanov
dba3c4b971 Add logging ops 2018-01-30 16:35:12 +02:00
Alexander Ivanov
5a4b934f82 Add flow ops 2018-01-30 15:20:52 +02:00
Alexander Ivanov
59bef848aa Memory and storage opcodes: TODO stateDB handler for the storage to work 2018-01-30 15:07:37 +02:00
Alexander Ivanov
0ec03afced Block and stack ops, elegant stack/dup/swap multiple opcode short def 2018-01-30 14:51:43 +02:00
Alexander Ivanov
e6e3f09ebd Start using the new rlpFields macro 2018-01-30 12:51:13 +02:00
Alexander Ivanov
0fa5c5fd94 Prepare the remaining opcodes, implement context opcodes 2018-01-29 21:38:24 +02:00
Alexander Ivanov
5ad14f59b2 Implement address/sha3 opcodes, start using nim-keccak-tiny 2018-01-29 19:40:22 +02:00
Alexander Ivanov
fba1052b4c More flexible gas cost definitions, start registering more opcodes in the runner 2018-01-29 15:56:51 +02:00
Alexander Ivanov
38a02250b5 Implement some utils and a basic runner
Implement some utils, still WIP
Several dsl-s for registering opcode handlers and gas costs and for running
simple opcode sequences
2018-01-24 15:31:24 +02:00
Alexander Ivanov
7b5f7e762b WIP opcode dsl, code stream changes 2018-01-23 20:36:23 +02:00
Alexander Ivanov
72c8ad4877 Implement duplication and block, add more opcodes, improve math support 2018-01-23 00:23:07 +02:00
Alexander Ivanov
637b56fa4c Prototype an example fork subclass 2018-01-17 16:16:00 +02:00
Alexander Ivanov
84ccfc5966 Port parts of several other modules
Focus on getting most types defined with minimal implementation
and fields sufficient for simple tests
2018-01-17 14:57:50 +02:00
Alexander Ivanov
e1c04e587f First version of tests 2018-01-17 13:24:09 +02:00
Alexander Ivanov
8a2aa81a44 Fix opcode type 2018-01-16 20:58:07 +02:00
Alexander Ivanov
69475a98f5 Implement more math: non-rigogous translation for now, more precise operation correctness later 2018-01-16 20:42:38 +02:00
Alexander Ivanov
706f3982a7 Translate several more modules, start shaping computation module 2018-01-16 19:05:20 +02:00
Alexander Ivanov
8ce5fa1773 First part of port
Translate with py2nim
Work on improving the input, use more nim-ish stuff
2018-01-15 20:42:40 +02:00
Jarrad
44f6fa5945
Update README.md 2018-01-04 06:19:23 +00:00
Jarrad
4aa2a479dd
Initial commit 2018-01-04 06:08:24 +00:00