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.go core: use headers only where blocks are unnecessary 2019-03-13 12:32:47 +02:00
block_validator_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
blockchain.go eth: interrupt chain insertion on shutdown (#21114) 2020-05-26 21:37:37 +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
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer.go core: add check in AddChildIndexer to avoid double lock (#20982) 2020-04-27 15:16:30 +02:00
chain_indexer_test.go core: fix chain indexer unit test (#20506) 2020-01-20 10:38:08 +02:00
chain_makers.go core: initial version of state snapshots 2020-02-25 12:51:04 +02:00
chain_makers_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03: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.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 cmd, core, params: inital support for yolo-v1 testnet (#21154) 2020-06-03 12:05:15 +03: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
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.go core: count tx size in slots, bump max size ot 4x32KB (#20352) 2020-01-10 11:40:03 +02: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: filter out txs with invalid signatures as soon as possible 2020-06-04 10:37:21 +08:00
tx_pool_test.go core: avoid double-lock in tx_pool_test (#20984) 2020-05-06 15:47:59 +02:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00