go-ethereum/core
Antonio Salazar Cardozo beff5fa578 params, core/vm: Istanbul EIP-1108 bn256 gas cost reduction (#19904)
* params: add IsIstanbul to config + rules

IstanbulBlock, used to determine if the config IsIstanbul, is currently
left nil until an actual block is chosen.

* params, core/vm: implement EIP-1108

Old gas costs for elliptic curve operations are given the PreIstanbul
prefix, while current gas costs retain the unprefixed names. The actual
precompile implementations are the same, so they are factored out into
common functions that are called by the pre-Istanbul and current
precompile structs. Finally, an Istanbul precompile list is added that
references the new precompile structs, which in turn reference the new
gas costs.

* params: fix fork ordering, add missing chain compatibility check
2019-08-06 17:12:54 +03:00
..
asm asm: remove unused parameter for function Lex (#18058) 2019-03-14 10:35:55 +01:00
bloombits core/bloombits, light: fix typos (#17235) 2018-07-24 11:24:27 +03:00
forkid core/forkid: implement the forkid EIP, announce via ENR (#19738) 2019-07-08 18:53:47 +03:00
rawdb all: update author list and licenses 2019-07-22 12:17:27 +03:00
state core/state, p2p/discover, trie, whisper: avoid unnecessary conversions (#19870) 2019-07-22 10:30:09 +03:00
types all: replace t.Log(); t.FailNow() with t.Fatal() (#19849) 2019-07-18 15:21:24 +03:00
vm params, core/vm: Istanbul EIP-1108 bn256 gas cost reduction (#19904) 2019-08-06 17:12:54 +03:00
.gitignore Renamed `chain` => `core` 2014-12-04 10:28:02 +01:00
bench_test.go core, eth, les, light: scope receipt functionality a bit cleaner 2019-04-15 13:42:26 +03:00
block_validator.go core: use headers only where blocks are unnecessary 2019-03-13 12:32:47 +02:00
block_validator_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
blockchain.go core/forkid: implement the forkid EIP, announce via ENR (#19738) 2019-07-08 18:53:47 +03:00
blockchain_insert.go all: simplify timestamps to uint64 (#19372) 2019-04-02 23:28:48 +03:00
blockchain_test.go les, les/flowcontrol: implement LES/3 (#19329) 2019-05-30 20:51:13 +02:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer.go core: fix chain indexer (#19786) 2019-07-03 11:18:48 +03:00
chain_indexer_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
chain_makers.go core: fix import errors on clique crashes + empty blocks (#19544) 2019-05-10 17:04:10 +03:00
chain_makers_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
dao_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
error.go core: move error variable to error.go (#19560) 2019-05-13 13:23:32 +03:00
events.go miner: regenerate mining work every 3 seconds (#17413) 2018-08-16 14:14:33 +03:00
evm.go all: simplify timestamps to uint64 (#19372) 2019-04-02 23:28:48 +03:00
gaspool.go miner: avoid unnecessary work (#15883) 2018-01-15 12:57:06 +02:00
gen_genesis.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
gen_genesis_account.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
genesis.go core: check error before accessing potentially nil block 2019-07-18 15:26:22 +03:00
genesis_alloc.go cmd, core, params: add support for Goerli 2019-02-04 14:53:12 +02:00
genesis_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
headerchain.go core, ethdb, metrics, p2p: expose various counter metrics for grafana 2019-06-11 09:49:13 +03:00
helper_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
mkalloc.go core/vm: 64 bit memory and gas calculations (#19210) 2019-03-12 11:40:05 +02:00
state_prefetcher.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00
state_processor.go consensus,core,miner: avoid overhead of creating a new block (#19301) 2019-04-30 16:42:36 +03:00
state_transition.go core: fix comment typo (#17236) 2018-07-24 13:17:12 +03:00
tx_cacher.go Comment error (#18303) 2018-12-14 11:15:31 +01:00
tx_journal.go core: fix typos in comment (#17531) 2018-08-28 10:04:33 +03:00
tx_list.go core, ethdb, metrics, p2p: expose various counter metrics for grafana 2019-06-11 09:49:13 +03:00
tx_list_test.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
tx_noncer.go core: fix write concurrency in txpool (#19835) 2019-07-17 13:39:41 +03:00
tx_pool.go core, les: fix les unit tests (#19823) 2019-07-22 15:45:40 +03:00
tx_pool_test.go core, les: fix les unit tests (#19823) 2019-07-22 15:45:40 +03:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00