Commit Graph

54 Commits

Author SHA1 Message Date
Nikolay Volf e15f631ec7 Some obvious evm & uint optimizations (#1576)
* fix name and tests for endians

* using renamed func

* zero and sign opt
2016-07-10 20:18:23 +02:00
Tomasz Drwięga 4c1b74a42e Calculating gas using usize (if supplied gaslimit fits in usize) (#1518)
* Spliting gasometer out of interpreter

* Choosing right gas calculations implementation based on supplied gas

* Moving verification out of gasometer

* MemGasCost benchmark.

Conflicts:
	ethcore/src/evm/benches/mod.rs

* Some simple benchmarks

* Benchmark for simple loop

* Calculating gas_for_memory only when it's actually needed

* Removing superfluous newline [ci skip]
2016-07-05 15:15:44 +02:00
Tomasz Drwięga 19585947a5 Fixing jit compilation 2016-06-23 14:46:33 +02:00
Gav Wood 22e390f922 Rename block_dao -> reject_dao. 2016-06-18 15:00:12 +02:00
Gav Wood 16412eb0c9 DAO Rescue soft fork (#1309)
* DAO Rescue soft fork

* Address minor issues.

* Fix tests.
2016-06-17 22:15:18 +02:00
Tomasz Drwięga 3905717d5d Fixing warnings 2016-06-03 11:36:30 +02:00
Robert Habermeier 0318bb9fe9 Have Ext::ret take self by value (#1187)
* refactor externalities::ret to take self by-value, add GasLeft enum, and alter evm::Result.

* remove unused imports, StopExecutionWithGasLeft variant

* adjust tests

* remove extraneous call to reserve

* update json_tests Ext to match new trait

* adjust executive json_test

* have evms own their memory for their entire lifetime

* make finalize API more friendly

* indentation fix

[ci skip]
2016-06-02 19:04:15 +02:00
Gav Wood b17581d7de VM tracing and JSON RPC endpoint for it. (#1169)
* Groundwork for basic VM tracing.

* RPC endpoint for VM tracing and ser/de types ready.

* Create VMTracer trait.

* Rearchitected VM tracing to reflect existing tracing.

Should more or less work now.

* Integrated VM tracing into JSONRPC.

* Fix ethcore module tests.

* Add tests for VM tracing.

* Fix consensus test code.

* Fix mock tests.

* Added VM trace information for post-execution stuff.

* Fix max-value calls and add "creates" field to getTransaction.

* Tests for VM tracing.

* Don't implement the trait with unimplemented.

* Remove invlaid comment.

* Fix tests.
2016-06-02 12:40:31 +02:00
Marek Kotewicz 6cff58055d CLI option for using JITEVM (#1103)
* easily configurable vm (in progress)

* completely removed vm_factory from engine

* --jitvm command line flag
2016-05-19 00:44:49 +02:00
Tomasz Drwięga 85da55a537 Fixing warnings 2016-04-06 10:55:40 +02:00
Robert Habermeier 12f4b5ea8a Remove unused mut 2016-04-01 09:33:12 -04:00
Tomasz Drwięga a0db1d5416 Merge branch 'master' into rustfmt
Conflicts:
	ethash/src/sizes.rs
	util/src/uint.rs
2016-03-23 16:55:54 +01:00
Gav Wood 72b604b8e8 Avoid tracing DELEGATECALL and CALLCODE. Plus tests for it. 2016-03-20 19:20:37 +01:00
Gav Wood f75fb6a59f Create transaction tracing test. 2016-03-20 11:33:36 +01:00
Gav Wood bd338a5741 Tracing implemented.
TODO:
- make it optional;
- track output;
- usher through to level higher than ExecutionResult.
2016-03-18 23:49:12 +01:00
Tomasz Drwięga e58ec31e20 Fixing warnings 2016-03-18 10:14:19 +01:00
Nikolay Volf 3eb08b0d61 fix tests and deuncommented 2016-03-14 10:53:37 +01:00
Nikolay Volf 829ed4d0a6 commented empty slice/vec comparison 2016-03-14 10:47:22 +01:00
Tomasz Drwięga d84e008e00 Removing superflous check for nightly 2016-03-11 11:16:49 +01:00
Tomasz Drwięga cbc2c0cf0c Fixing clippy warnings. When building on nightly it is required to enable clippy 2016-03-07 14:34:17 +01:00
Nikolay Volf d0125f3ff5 uint to separated crate 2016-03-01 00:21:15 +03:00
Tomusdrw 07e704c968 Fixing clippy warnings. Implementing PartialEq for Uints 2016-02-23 11:40:23 +01:00
arkpar 8bd052b986 Fixed warnings 2016-02-20 11:54:12 +01:00
debris b5d6359030 fixed allow warnings in ethcore 2016-02-19 12:40:23 +01:00
arkpar 8fa62130e3 Added TODOs 2016-02-19 00:23:05 +01:00
debris df3d17789a compiling ethcore on beta 2016-02-19 00:06:06 +01:00
Tomusdrw 22e2458ce5 Adding rustfmt_skip and fixing couple of places that have troubles after formatting. 2016-02-16 11:01:04 +01:00
Tomusdrw 2c4700f4c1 Fixing clippy warnings 2016-02-15 00:55:45 +01:00
debris f1b39ee1e5 nightly fixes 2016-02-14 12:54:27 +01:00
Nikolay Volf fc0153a5a4 returning client to the place it should be, cleanup 2016-02-09 00:54:33 +03:00
Gav Wood 105f4262dd Merge pull request #354 from ethcore/license
License
2016-02-05 14:06:10 +01:00
Gav Wood 85e2ef1cac Merge pull request #353 from ethcore/state
Performance optimizations
2016-02-05 14:05:56 +01:00
debris c90d64662a added license in every *.rs file 2016-02-05 13:40:41 +01:00
arkpar 97082ca807 Reduced allocations in interpreter 2016-02-05 02:15:26 +01:00
debris 87d4c0a775 jit passes all tests expect these, where gas exceed 2 ^ 63 2016-02-04 14:36:57 +01:00
debris 3030b18683 evmjit homestead merge, compiles but tests do not pass yet 2016-02-04 13:13:08 +01:00
Arkadiy Paronyan d467ac76b0 Merge pull request #323 from ethcore/warnings
Look ma no `dead_code`
2016-02-03 16:57:08 +01:00
Arkadiy Paronyan b831d694b4 Merge pull request #326 from ethcore/jit
Fixing JIT, Updating hook to run `ethcore` tests.
2016-02-03 16:56:59 +01:00
arkpar 42d5c09131 Final docs 2016-02-03 16:43:48 +01:00
Tomusdrw 62b7862206 Fixing evm tests for JIT 2016-02-03 16:21:52 +01:00
Tomusdrw 83bfd43a90 Fixing JIT compilation 2016-02-03 15:59:53 +01:00
Tomusdrw 8a2db83803 Removing 2016-02-03 15:57:17 +01:00
Tomusdrw 471f1f82be Fixing unused variable warning 2016-02-03 15:35:03 +01:00
Tomusdrw a7b1b70fc1 Changing `allow(dead_code)` to more specific exclusions 2016-02-03 15:33:58 +01:00
Tomusdrw 60d7fdf81f CALL/CALLCODE tests 2016-02-03 13:04:52 +01:00
Tomusdrw 82496ffb13 Jump tests 2016-02-03 11:59:48 +01:00
Tomusdrw da22bbf21c Tests for some external operations 2016-02-03 11:26:24 +01:00
Tomusdrw 285621cfa9 Merge branch 'master' into evm-cov-test
Conflicts:
	ethcore/src/evm/factory.rs
2016-02-02 18:21:55 +01:00
Tomusdrw 270c6c1897 Adding pop & badinstruction tests 2016-02-02 18:16:24 +01:00
Tomusdrw 366f9fe8f2 Couple of tests for EVM 2016-02-02 18:02:58 +01:00