go-ethereum/core
Marius van der Wijden 0c82928981
core/vm: fix incorrect computation of BLS discount (#21253)
* core/vm: fix incorrect computation of discount

During testing on Yolov1 we found that the way geth calculates the discount
is not in line with the specification. Basically what we did is calculate
128 * Bls12381GXMulGas * discount / 1000 whenever we received more than 128 pairs
of values. Correct would be to calculate k * Bls12381... for k > 128.

* core/vm: better logic for discount calculation

* core/vm: better calculation logic, added worstcase benchmarks

* core/vm: better benchmarking logic
2020-06-24 21:58:28 +02:00
..
asm core/asm: allow numbers in labels (#20362) 2019-11-23 12:52:17 +01:00
bloombits core/bloombits, light: fix typos (#17235) 2018-07-24 11:24:27 +03:00
forkid core: fix typo in comments (#21181) 2020-06-08 10:53:56 +03:00
rawdb core/rawdb: fix high memory usage in freezer (#21243) 2020-06-19 10:51:37 +03:00
state core/state: avoid escape analysis fault when accessing cached state 2020-06-08 16:11:37 +03:00
types core/types: remove BlockBy sorting code (#20355) 2019-11-21 16:35:22 +02:00
vm core/vm: fix incorrect computation of BLS discount (#21253) 2020-06-24 21:58:28 +02:00
.gitignore Renamed chain => core 2014-12-04 10:28:02 +01:00
bench_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
block_validator_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
block_validator.go core: use headers only where blocks are unnecessary 2019-03-13 12:32:47 +02:00
blockchain_insert.go all: simplify timestamps to uint64 (#19372) 2019-04-02 23:28:48 +03:00
blockchain_test.go all: fix typos in comments (#21118) 2020-05-25 10:21:28 +02:00
blockchain.go eth: interrupt chain insertion on shutdown (#21114) 2020-05-26 21:37:37 +02:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer_test.go core: fix chain indexer unit test (#20506) 2020-01-20 10:38:08 +02:00
chain_indexer.go core: add check in AddChildIndexer to avoid double lock (#20982) 2020-04-27 15:16:30 +02:00
chain_makers_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
chain_makers.go core: initial version of state snapshots 2020-02-25 12:51:04 +02:00
dao_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
error.go all: fix typos in comments (#21118) 2020-05-25 10:21:28 +02:00
events.go eth/filters: remove use of event.TypeMux for pending logs (#20312) 2019-12-10 12:39:14 +01:00
evm.go core/evm: less iteration in blockhash (#20589) 2020-02-04 12:32:31 +02:00
gaspool.go miner: avoid unnecessary work (#15883) 2018-01-15 12:57:06 +02:00
gen_genesis_account.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
gen_genesis.go all: regenerate codecs with gencodec commit 90983d99de (#15830) 2018-01-08 15:13:22 +02:00
genesis_alloc.go cmd, core, params: inital support for yolo-v1 testnet (#21154) 2020-06-03 12:05:15 +03:00
genesis_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
genesis.go cmd, core, params: inital support for yolo-v1 testnet (#21154) 2020-06-03 12:05:15 +03:00
headerchain.go core: mirror full node reorg logic in light client too (#20931) 2020-04-22 11:27:47 +03:00
mkalloc.go core/vm: 64 bit memory and gas calculations (#19210) 2019-03-12 11:40:05 +02:00
rlp_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
state_prefetcher.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
state_processor.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +03:00
state_transition.go all: seperate consensus error and evm internal error (#20830) 2020-04-22 11:25:36 +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_test.go all: switch gas limits from big.Int to uint64 2018-01-03 14:45:35 +02:00
tx_list.go core: count tx size in slots, bump max size ot 4x32KB (#20352) 2020-01-10 11:40:03 +02:00
tx_noncer.go core: fix write concurrency in txpool (#19835) 2019-07-17 13:39:41 +03:00
tx_pool_test.go core: avoid double-lock in tx_pool_test (#20984) 2020-05-06 15:47:59 +02:00
tx_pool.go core: filter out txs with invalid signatures as soon as possible 2020-06-04 10:37:21 +08:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00