go-ethereum/core
Martin Holst Swende 175506e7fd
core/types, rlp: optimize derivesha (#21728)
This PR contains a minor optimization in derivesha, by exposing the RLP
int-encoding and making use of it to write integers directly to a
buffer (an RLP integer is known to never require more than 9 bytes
total). rlp.AppendUint64 might be useful in other places too.

The code assumes, just as before, that the hasher (a trie) will copy the
key internally, which it does when doing keybytesToHex(key).

Co-authored-by: Felix Lange <fjl@twurst.com>
2020-11-04 19:29:24 +01:00
..
asm core/asm: allow numbers in labels (#20362) 2019-11-23 12:52:17 +01:00
bloombits core/bloombits: faster generator (#21625) 2020-10-06 16:34:29 +03:00
forkid cmd/devp2p: add eth protocol test suite (#21598) 2020-09-23 15:18:17 +02:00
rawdb core: improve snapshot journal recovery (#21594) 2020-10-29 21:01:58 +02:00
state core/state/snapshot: fix journal recovery from generating old journal (#21775) 2020-11-04 13:41:46 +02:00
types core/types, rlp: optimize derivesha (#21728) 2020-11-04 19:29:24 +01:00
vm all: implement EIP-2929 (gas cost increases for state access opcodes) + yolo-v2 (#21509) 2020-10-23 08:26:57 +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 trie: use stacktrie for Derivesha operation (#21407) 2020-09-29 17:38:13 +02:00
blockchain_insert.go core: fix blockchain insert report time interval calculation (#21723) 2020-10-21 16:53:30 +02:00
blockchain_repair_test.go core: improve snapshot journal recovery (#21594) 2020-10-29 21:01:58 +02:00
blockchain_sethead_test.go core: improve snapshot journal recovery (#21594) 2020-10-29 21:01:58 +02:00
blockchain_snapshot_test.go core/state/snapshot: fix journal recovery from generating old journal (#21775) 2020-11-04 13:41:46 +02:00
blockchain_test.go core, eth, les, trie: add a prefix to contract code (#21080) 2020-08-21 15:10:40 +03:00
blockchain.go core: improve snapshot journal recovery (#21594) 2020-10-29 21:01:58 +02:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
chain_indexer_test.go les: historical data garbage collection (#19570) 2020-07-13 11:02:54 +02:00
chain_indexer.go all: replace RWMutex with Mutex in places where RLock is not used (#21622) 2020-10-13 10:58:41 +02:00
chain_makers_test.go cmd, core, eth: background transaction indexing (#20302) 2020-05-11 18:58:43 +03:00
chain_makers.go les: historical data garbage collection (#19570) 2020-07-13 11:02:54 +02:00
dao_test.go les: historical data garbage collection (#19570) 2020-07-13 11:02:54 +02: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 all: implement EIP-2929 (gas cost increases for state access opcodes) + yolo-v2 (#21509) 2020-10-23 08:26:57 +02:00
headerchain.go core: define and test chain rewind corner cases (#21409) 2020-08-20 13:01:24 +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: implement EIP-2929 (gas cost increases for state access opcodes) + yolo-v2 (#21509) 2020-10-23 08:26:57 +02: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 Revert "core, txpool: less allocations when handling transactions (#21232)" 2020-07-09 14:02:03 +02:00
tx_list.go core: free pointer from slice after popping element from price heap (#21572) 2020-09-28 14:24:01 +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, eth, les, trie: add a prefix to contract code (#21080) 2020-08-21 15:10:40 +03:00
tx_pool.go core: fix txpool off-by-one error (#21683) 2020-10-09 12:23:46 +03:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00