diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2018-10-26 17:01:05 +0000 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2018-10-26 17:01:05 +0000 |
commit | 30f728e3627e28ceedec2ef6ce0424c061c5ed29 (patch) | |
tree | 6b40ce176cc920965c2ec6fd59f86a9659e028a4 /tests/performance_tests/ge_frombytes_vartime.h | |
parent | Merge pull request #4697 (diff) | |
download | monero-30f728e3627e28ceedec2ef6ce0424c061c5ed29.tar.xz |
performance_tests: measure ge_frombytes_vartime only
not an extra dynamic cast, which might be heavy
Diffstat (limited to 'tests/performance_tests/ge_frombytes_vartime.h')
-rw-r--r-- | tests/performance_tests/ge_frombytes_vartime.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/tests/performance_tests/ge_frombytes_vartime.h b/tests/performance_tests/ge_frombytes_vartime.h index ef9625d6b..3f7d55182 100644 --- a/tests/performance_tests/ge_frombytes_vartime.h +++ b/tests/performance_tests/ge_frombytes_vartime.h @@ -49,22 +49,29 @@ public: if (!base_class::init()) return false; + cryptonote::account_base m_alice; + cryptonote::transaction m_tx; + m_alice.generate(); std::vector<tx_destination_entry> destinations; destinations.push_back(tx_destination_entry(1, m_alice.get_keys().m_account_address, false)); - return construct_tx(this->m_miners[this->real_source_idx].get_keys(), this->m_sources, destinations, boost::none, std::vector<uint8_t>(), m_tx, 0); + if (!construct_tx(this->m_miners[this->real_source_idx].get_keys(), this->m_sources, destinations, boost::none, std::vector<uint8_t>(), m_tx, 0)) + return false; + + const cryptonote::txin_to_key& txin = boost::get<cryptonote::txin_to_key>(m_tx.vin[0]); + m_key = rct::ki2rct(txin.k_image); + + return true; } bool test() { ge_p3 unp; - const cryptonote::txin_to_key& txin = boost::get<cryptonote::txin_to_key>(m_tx.vin[0]); - return ge_frombytes_vartime(&unp, (const unsigned char*) &txin.k_image) == 0; + return ge_frombytes_vartime(&unp, (const unsigned char*) &m_key) == 0; } private: - cryptonote::account_base m_alice; - cryptonote::transaction m_tx; + rct::key m_key; }; |