228 Commits

Author SHA1 Message Date
andri lim
a1242d2538 bugfix: block 78458 crash 2019-02-18 13:16:04 +02:00
andri lim
282824cd53 zah's request: add missing comments 2019-02-18 13:16:04 +02:00
andri lim
8f9d1ae748 fixes callcode bug 2019-02-15 17:20:51 +02:00
andri lim
d7bd55bd21 fixes opcode call: simplify gas costs 2019-02-15 17:20:51 +02:00
andri lim
44d05dfdb1 fixes transaction_tracer.nim: tracing depth 2019-02-15 17:20:51 +02:00
andri lim
17188dfcb1 fixes memory write: no padding 2019-02-15 17:20:51 +02:00
andri lim
e38b1bf803 fixes generateChildComputation 2019-02-15 17:20:51 +02:00
andri lim
5701c8bacb fixes precompile contract: identity gascost 2019-02-15 17:20:51 +02:00
andri lim
00087de2ce trade 7 failed GST with 107 OK GST 2019-02-07 11:01:43 +01:00
andri lim
9efef3829f fixes storage tracer 2019-02-06 18:42:03 +01:00
andri lim
a28f06a825 fixes CALL opcode 2019-02-06 18:42:03 +01:00
Yuriy Glukhov
481c6cf4ed Use nim-eth (#224) 2019-02-05 20:15:50 +01:00
Ștefan Talpalaru
7c7260552d
rebase and various fixes
- port to new APIs
- added copyright headers
- bumped the copyright interval in modified files
- fixed tests
- reorganised imports
- normalised function names
- deleted some trailing space
- added test_rpc to all_tests
- assert() -> doAssert()
- moved the RPC port in a constant for the test suite
2019-01-06 20:19:48 +01:00
andri lim
b93d809805 fix internal transactions account tracing 2019-01-06 13:17:25 +02:00
andri lim
e78fb72ef6 fixes #188 2019-01-06 13:16:45 +02:00
andri lim
8a6d351c22 add internal transactions dump 2019-01-06 11:43:38 +02:00
andri lim
b159b5c945 remove lastOpCodeHasRetVal, make it simpler 2019-01-06 11:43:38 +02:00
Ștefan Talpalaru
26ee2fce26 fix breakage with Nim HEAD 2019-01-04 15:39:16 +02:00
andri lim
ad1202f98a initial make_receipt 2018-12-16 15:38:51 +02:00
Ștefan Talpalaru
f91e69f7c7
more VM tracing
The existing vmState tracing is plugged into chronicles, at the TRACE
level, to facilitate state test debugging.

Some useful chronicles defines are added to "tests/nim.cfg" to simplify
the compile-and-run command for individual tests.
2018-12-12 11:47:10 +01:00
Ștefan Talpalaru
115843487c
general-state testsuite changes and better fork selection
- skipped the tests in allowedFailInCurrentBuild()
- replaced doAssert() with check() in testFixtureIndexes() so we can see
  both hash values on failure
- checking filename extension for JSON tests to avoid editor swap files
- replaced the duplicated block values in the main net's ChainConfig
  with values from forkBlocks
- allowed overriding the current fork in computations, because the old
  strategy of only looking at the block number doesn't work with JSON tests
  where the block number is usually 1
- explicitly pass the fork to gasCosts() and use it for conditional cost
  calculation
- fixed a logic error in the CREATE opcode
- fixed VM selection based on current fork in updateOpcodeExec()
- single point of control for supported forks in tests (just one fork, at the
  moment)
- 44 new test failures (that were probably passing for the wrong reasons)
2018-12-07 18:18:29 +01:00
Ștefan Talpalaru
03ec65487d
logging changes
- port some "echo" logging to "chronicles"
- change the logging level of messages that should not appear by default
  to TRACE instead of DEBUG
- remove the "nimbusTrace" define
- suppress logging for messages below the ERROR level in "nimble test"
2018-12-07 00:45:52 +01:00
coffeepots
86853ea97c
Merge pull request #187 from status-im/modexp-fixes
Modexp fixes
2018-12-06 10:10:59 +00:00
andri lim
fe5ddf757b fix trace returnValue 2018-12-05 22:01:29 +07:00
andri lim
572de41507 tracing opcode return value 2018-12-05 22:01:29 +07:00
andri lim
7a3ddfec87 correcting account storage retrieval 2018-12-05 22:01:29 +07:00
andri lim
2552d6452a fix traceTransaction 2018-12-05 22:01:29 +07:00
andri lim
5509c66cce implement transaction tracer 2018-12-05 22:01:28 +07:00
mratsim
24bcb3b2d8 remove log2 spurious comment 2018-12-04 15:56:18 +01:00
mratsim
f50bb57eb6 Reactivate the precompiles test + consume gas 2018-12-04 15:52:59 +01:00
mratsim
29f8a8a066 modExp fixed! 2018-12-04 15:46:33 +01:00
mratsim
6d93bdffea modExp, support up to uint4096 2018-12-04 14:39:10 +01:00
mratsim
949c5a1dc6 Modexp fix example 1 (returned to early for ints of length 1) 2018-12-04 12:49:48 +01:00
coffeepots
f99138dca6 Merge branch 'call-fixes-precompiles' 2018-11-12 15:57:54 +00:00
coffeepots
1cead76327 Add note about cyclic dep 2018-11-08 16:40:40 +00:00
coffeepots
6eb430fd52 Fix CREATE op code gas costs, more debug output, call transactions 2018-11-08 16:00:21 +00:00
coffeepots
492d2ae676 Debug message for new messages 2018-11-08 15:48:32 +00:00
coffeepots
6b1e989ff0 Add initial gas cost for CREATE 2018-11-08 15:47:48 +00:00
Yuriy Glukhov
bac452f589 Initial TransactionTracer impl 2018-10-28 14:38:05 +01:00
coffeepots
7ba1cfaf13 Remove endian code, precompiles should now run. Removed raise as case stmt is full now. 2018-10-19 14:41:04 +01:00
coffeepots
434edcc2ae Fix incorrect message parameters (had sender and destination swapped) 2018-10-18 17:47:54 +01:00
cheatfate
0b15b86195 Fix ecMul, ecPairing, ecAdd. 2018-10-16 11:49:13 +03:00
coffeepots
6e4616e443 Precompiles now executed if called from vm_state_transactions 2018-10-12 16:16:14 +01:00
coffeepots
67df44e917 Fix ecrecover, pad ripemd result and use sha256 vs keccak256 2018-10-10 17:36:11 +01:00
mratsim
bb6e1e1d76 modExp precompiles: fix padding and static evaluation 2018-10-10 16:26:21 +02:00
mratsim
0494e2a877 Support short inputs with missing bytes 2018-10-05 17:37:52 +02:00
mratsim
38b4d54815 Add modExp precompile + gas costs 2018-10-05 17:26:20 +02:00
cheatfate
9318ea93cf Added nim-bncurve dependency.
Added implementation of `ecAdd`, `ecMul`, `ecPairing` precompiles.
2018-10-05 12:15:04 +03:00
coffeepots
6a4cd4ec67 Update precompile gas costs case (cosmetic change) 2018-10-03 17:59:41 +01:00
coffeepots
3249c3e048 Add precompile costs 2018-10-03 16:39:34 +01:00