From b264a65b415c92a0502a2801e1df599a82bc26bf Mon Sep 17 00:00:00 2001 From: Dusan Klinec Date: Fri, 17 Aug 2018 04:07:23 +0200 Subject: [PATCH] xmr: bp - KeyVEval - caching current element, avoid allocations --- src/apps/monero/xmr/bulletproof.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/apps/monero/xmr/bulletproof.py b/src/apps/monero/xmr/bulletproof.py index 1a08e2fea..6313c0ab1 100644 --- a/src/apps/monero/xmr/bulletproof.py +++ b/src/apps/monero/xmr/bulletproof.py @@ -362,9 +362,12 @@ class KeyVEval(KeyV): def __init__(self, elems=64, src=None): self.size = elems self.fnc = src + self.buff = _ensure_dst_key() + self.mv = memoryview(self.buff) def __getitem__(self, item): - return memoryview(self.fnc(item)) + self.fnc(item, self.mv) + return self.mv def __setitem__(self, key, value): raise ValueError("Constant vector")