neoneo-go/pkg
Roman Khimov 9a06995460 bigint: don't allocate in ToPreallocatedBytes
Turns out, it's almost always allocating because we're mostly dealing with
small integers while the buffer size is calculated in 8-byte chunks here, so
preallocated buffer is always insufficient.

name                   old time/op    new time/op    delta
ToPreallocatedBytes-8    28.5ns ± 7%    19.7ns ± 5%   -30.72%  (p=0.000 n=10+10)

name                   old alloc/op   new alloc/op   delta
ToPreallocatedBytes-8     16.0B ± 0%      0.0B       -100.00%  (p=0.000 n=10+10)

name                   old allocs/op  new allocs/op  delta
ToPreallocatedBytes-8      1.00 ± 0%      0.00       -100.00%  (p=0.000 n=10+10)

Fix StorageItem reuse at the same time. We don't copy when getting values from
the storage, but we don when we're putting them, so buffer reuse could corrupt
old values.
2022-06-02 15:38:39 +03:00
..
compiler interop: add interop API for MODMUL, MODPOW opcodes 2022-05-12 14:31:24 +03:00
config core: rename hardfork HF_2712_FixSyscallFees 2022-05-26 14:20:48 +03:00
consensus [#2442] English Check 2022-05-04 19:48:27 +03:00
core bigint: don't allocate in ToPreallocatedBytes 2022-06-02 15:38:39 +03:00
crypto crypto: adjust Checksum documentation 2022-05-13 13:20:40 +03:00
encoding bigint: don't allocate in ToPreallocatedBytes 2022-06-02 15:38:39 +03:00
interop core: adjust Signer to stackitem conversion 2022-05-23 14:01:42 +03:00
io [#2442] English Check 2022-05-04 19:48:27 +03:00
neotest neotest: return failed tx hash 2022-05-19 13:56:24 +03:00
network transaction: fix Rules stringer, it's WitnessRules in C# 2022-05-07 12:05:25 +03:00
rpc native: emit vote/candidate events 2022-05-28 18:44:20 +03:00
services services: forbid insecure Oracle request redirects 2022-05-11 09:45:44 +03:00
smartcontract [#2442] English Check 2022-05-04 19:48:27 +03:00
util [#2442] English Check 2022-05-04 19:48:27 +03:00
vm stackitem: reusable serialization context 2022-06-02 15:38:39 +03:00
wallet [#2442] English Check 2022-05-04 19:48:27 +03:00