Merge pull request #4805

6a1062f5 bulletproofs: reserve vector memory when known in advance (moneromooo-monero)
This commit is contained in:
Riccardo Spagni 2018-11-16 11:16:12 +02:00
commit 0295055bcb
No known key found for this signature in database
GPG key ID: 55432DF31CCD4FCD

View file

@ -112,6 +112,7 @@ static void init_exponents()
if (init_done) if (init_done)
return; return;
std::vector<MultiexpData> data; std::vector<MultiexpData> data;
data.reserve(maxN*maxM*2);
for (size_t i = 0; i < maxN*maxM; ++i) for (size_t i = 0; i < maxN*maxM; ++i)
{ {
Hi[i] = get_exponent(rct::H, i * 2); Hi[i] = get_exponent(rct::H, i * 2);
@ -1056,6 +1057,7 @@ bool bulletproof_VERIFY(const std::vector<const Bulletproof*> &proofs)
bool bulletproof_VERIFY(const std::vector<Bulletproof> &proofs) bool bulletproof_VERIFY(const std::vector<Bulletproof> &proofs)
{ {
std::vector<const Bulletproof*> proof_pointers; std::vector<const Bulletproof*> proof_pointers;
proof_pointers.reserve(proofs.size());
for (const Bulletproof &proof: proofs) for (const Bulletproof &proof: proofs)
proof_pointers.push_back(&proof); proof_pointers.push_back(&proof);
return bulletproof_VERIFY(proof_pointers); return bulletproof_VERIFY(proof_pointers);