go-pulse/eth
Jeffrey Wilcke bbc4ea4ae8 core/vm: improved EVM run loop & instruction calling (#3378)
The run loop, which previously contained custom opcode executes have been
removed and has been simplified to a few checks.

Each operation consists of 4 elements: execution function, gas cost function,
stack validation function and memory size function. The execution function
implements the operation's runtime behaviour, the gas cost function implements
the operation gas costs function and greatly depends on the memory and stack,
the stack validation function validates the stack and makes sure that enough
items can be popped off and pushed on and the memory size function calculates
the memory required for the operation and returns it.

This commit also allows the EVM to go unmetered. This is helpful for offline
operations such as contract calls.
2017-01-05 11:52:10 +01:00
..
downloader core/types, params: EIP#155 2016-11-13 14:55:30 +01:00
fetcher core/types, params: EIP#155 2016-11-13 14:55:30 +01:00
filters eth/filters: add FindOnce for iterator-like operation (#3435) 2016-12-20 02:00:03 +01:00
gasprice all: update license information 2016-11-09 02:51:34 +01:00
api_backend.go core/vm: improved EVM run loop & instruction calling (#3378) 2017-01-05 11:52:10 +01:00
api.go core/vm: improved EVM run loop & instruction calling (#3378) 2017-01-05 11:52:10 +01:00
backend_test.go core, core/state, trie: EIP158, reprice & skip empty account write 2016-11-13 10:44:04 +01:00
backend.go cmd/utils, eth, les: bubble --fakepow flag into eth/les too 2017-01-04 10:42:41 +02:00
bad_block.go all: update license information 2016-11-09 02:51:34 +01:00
bind.go internal/ethapi: fix hex handling for eth_call input and eth_sendRawTransaction 2016-12-20 14:46:22 +01:00
db_upgrade.go all: update license information 2016-11-09 02:51:34 +01:00
handler_test.go core/types, params: EIP#155 2016-11-13 14:55:30 +01:00
handler.go eth, les: defer starting LES service until ETH initial sync is finished 2016-12-10 09:53:25 +01:00
helper_test.go core: bugfix state change race condition in txpool (#3412) 2016-12-10 23:54:58 +01:00
metrics.go eth, eth/downloader, eth/fetcher: delete eth/61 code 2016-07-22 13:17:19 +02:00
peer.go eth, eth/downloader: better remote head tracking 2016-07-25 15:14:14 +03:00
protocol_test.go core, eth, internal, miner: optimize txpool for quick ops 2016-09-02 14:12:03 +03:00
protocol.go core: bugfix state change race condition in txpool (#3412) 2016-12-10 23:54:58 +01:00
sync_test.go eth: skip transaction handling during fast sync 2016-05-17 14:17:20 +03:00
sync.go Merge pull request #3413 from zsfelfoldi/light-topic4 2016-12-12 20:46:15 +01:00