Preallocate memory when deriving address from key

This makes src/address.AddrForKey preallocate 32 bytes before starting
the address derivation. As benches in syg_go show, reallocating temp
takes 20% of the function runtime.
This commit is contained in:
Timur Demin 2021-07-06 21:24:21 +05:00
parent 35e8ff7c9d
commit 04ecdf6045
No known key found for this signature in database
GPG Key ID: 9EDF3F9D9286FA20

View File

@ -64,7 +64,7 @@ func AddrForKey(publicKey ed25519.PublicKey) *Address {
buf[idx] = ^buf[idx]
}
var addr Address
var temp []byte
var temp = make([]byte, 0, 32)
done := false
ones := byte(0)
bits := byte(0)