Make util phexdigit array reusable

class template base_uint had its own private lookup table.
This is saving 256 bytes per instantiation.

The result is not spectacular as bitcoin-qt has only shrinked of
about 1Kb but it is still valid improvement.

Also, I have replaced a for loop with a memset() call.

Made CBigNum::SetHex() use the new HexDigit() function.

Signed-off-by: Olivier Langlois <olivier@olivierlanglois.net>
This commit is contained in:
Olivier Langlois
2013-10-10 12:35:51 -04:00
parent 15b48ab036
commit f171ec0c7d
5 changed files with 34 additions and 14 deletions

View File

@@ -175,4 +175,12 @@ BOOST_AUTO_TEST_CASE(bignum_SetCompact)
BOOST_CHECK_EQUAL(num.GetCompact(), 0xff123456U);
}
BOOST_AUTO_TEST_CASE(bignum_SetHex)
{
std::string hexStr = "deecf97fd890808b9cc0f1b6a3e7a60b400f52710e6ad075b1340755bfa58cc9";
CBigNum num;
num.SetHex(hexStr);
BOOST_CHECK_EQUAL(num.GetHex(), hexStr);
}
BOOST_AUTO_TEST_SUITE_END()