Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r81946 - in trunk: boost/multiprecision/cpp_int boost/multiprecision/detail/functions libs/multiprecision/config libs/multiprecision/doc libs/multiprecision/doc/html libs/multiprecision/doc/html/boost_multiprecision/indexes libs/multiprecision/doc/html/boost_multiprecision/perf libs/multiprecision/test
From: john_at_[hidden]
Date: 2012-12-14 13:37:30


Author: johnmaddock
Date: 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
New Revision: 81946
URL: http://svn.boost.org/trac/boost/changeset/81946

Log:
Add some optimisation to gcd/lcm/lsb and cpp_int:
Use compiler intrinsics where possible for lsb.
Switch to using native integers when the values get small enough for gcd.
Re-run the performance tests and regenerate the docs.

Also change the series evaluation limits to make them depend on the precision in pow.hpp and trig.hpp.
Text files modified:
   trunk/boost/multiprecision/cpp_int/misc.hpp | 287 +++++++++
   trunk/boost/multiprecision/detail/functions/pow.hpp | 14
   trunk/boost/multiprecision/detail/functions/trig.hpp | 14
   trunk/libs/multiprecision/config/Jamfile.v2 | 2
   trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s01.html | 4
   trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s02.html | 4
   trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s03.html | 4
   trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s04.html | 4
   trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/integer_performance.html | 1177 ++++++++++++++++++++++-----------------
   trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/rational_performance.html | 40
   trunk/libs/multiprecision/doc/html/index.html | 2
   trunk/libs/multiprecision/doc/multiprecision.qbk | 269 ++++----
   trunk/libs/multiprecision/test/Jamfile.v2 | 2
   trunk/libs/multiprecision/test/test_cpp_int.cpp | 1
   14 files changed, 1135 insertions(+), 689 deletions(-)

Modified: trunk/boost/multiprecision/cpp_int/misc.hpp
==============================================================================
--- trunk/boost/multiprecision/cpp_int/misc.hpp (original)
+++ trunk/boost/multiprecision/cpp_int/misc.hpp 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -107,6 +107,64 @@
    result.sign(false);
 }
 
+template <class Unsigned, class Tag>
+inline unsigned find_lsb(Unsigned mask, const Tag&)
+{
+ unsigned result = 0;
+ while(!(mask & 1u))
+ {
+ mask >>= 1;
+ ++result;
+ }
+ return result;
+}
+
+#if defined(BOOST_MSVC) && (defined(_M_IX86) || defined(_M_X64))
+BOOST_FORCEINLINE unsigned find_lsb(limb_type mask, const mpl::int_<32>&)
+{
+ unsigned long result;
+ _BitScanForward(&result, mask);
+ return result;
+}
+#ifdef _M_X64
+BOOST_FORCEINLINE unsigned find_lsb(limb_type mask, const mpl::int_<64>&)
+{
+ unsigned long result;
+ _BitScanForward64(&result, mask);
+ return result;
+}
+#endif
+#endif
+
+#if defined(__GNUC__)
+BOOST_FORCEINLINE unsigned find_lsb_imp(limb_type mask, mpl::true_ const&)
+{
+ return __builtin_ctz(mask);
+}
+BOOST_FORCEINLINE unsigned find_lsb_imp(limb_type mask, mpl::false_ const&)
+{
+ return __builtin_ctzll(mask);
+}
+template <class Tag>
+BOOST_FORCEINLINE unsigned find_lsb(limb_type mask, const Tag&)
+{
+ return find_lsb_imp(mask, mpl::bool_<Tag::value <= static_cast<int>(sizeof(unsigned int) * CHAR_BIT)>());
+}
+#elif defined(BOOST_INTEL)
+BOOST_FORCEINLINE unsigned find_lsb_imp(limb_type mask, mpl::true_ const&)
+{
+ return _bit_scan_forward(mask);
+}
+BOOST_FORCEINLINE unsigned find_lsb_imp(limb_type mask, mpl::false_ const&)
+{
+ return find_lsb<limb_type, mpl::int_<0> >(mask, mpl::int_<0>());
+}
+template <class Tag>
+BOOST_FORCEINLINE unsigned find_lsb(limb_type mask, const Tag&)
+{
+ return find_lsb_imp(mask, mpl::bool_<Tag::value <= sizeof(int) * CHAR_BIT>());
+}
+#endif
 //
 // Get the location of the least-significant-bit:
 //
@@ -124,7 +182,6 @@
       BOOST_THROW_EXCEPTION(std::range_error("Testing individual bits in negative values is not supported - results are undefined."));
    }
 
- unsigned result = 0;
    //
    // Find the index of the least significant limb that is non-zero:
    //
@@ -134,12 +191,7 @@
    //
    // Find the index of the least significant bit within that limb:
    //
- limb_type l = a.limbs()[index];
- while(!(l & 1u))
- {
- l >>= 1;
- ++result;
- }
+ unsigned result = find_lsb(a.limbs()[index], mpl::int_<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>::limb_bits>());
 
    return result + index * cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>::limb_bits;
 }
@@ -246,6 +298,208 @@
    return eval_integer_modulus(x, static_cast<unsigned_type>(abs(val)));
 }
 
+inline limb_type integer_gcd_reduce(limb_type u, limb_type v)
+{
+ do
+ {
+ if(u > v)
+ std::swap(u, v);
+ if(u == v)
+ break;
+ v -= u;
+ v >>= find_lsb(v, mpl::int_<CHAR_BIT * sizeof(limb_type)>());
+ } while(true);
+ return u;
+}
+
+inline double_limb_type integer_gcd_reduce(double_limb_type u, double_limb_type v)
+{
+ do
+ {
+ if(u > v)
+ std::swap(u, v);
+ if(u == v)
+ break;
+ if(v <= ~static_cast<limb_type>(0))
+ {
+ u = integer_gcd_reduce(static_cast<limb_type>(v), static_cast<limb_type>(u));
+ break;
+ }
+ v -= u;
+ while((static_cast<unsigned>(v) & 1u) == 0)
+ v >>= 1;
+ } while(true);
+ return u;
+}
+
+template <unsigned MinBits1, unsigned MaxBits1, cpp_integer_type SignType1, cpp_int_check_type Checked1, class Allocator1>
+inline typename enable_if_c<!is_trivial_cpp_int<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> >::value>::type
+ eval_gcd(
+ cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& result,
+ const cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& a,
+ limb_type v)
+{
+ using default_ops::eval_lsb;
+ using default_ops::eval_is_zero;
+ using default_ops::eval_get_sign;
+
+ int shift;
+
+ cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> u(a);
+
+ int s = eval_get_sign(u);
+
+ /* GCD(0,x) := x */
+ if(s < 0)
+ {
+ u.negate();
+ }
+ else if(s == 0)
+ {
+ result = v;
+ return;
+ }
+ if(v == 0)
+ {
+ result = u;
+ return;
+ }
+
+ /* Let shift := lg K, where K is the greatest power of 2
+ dividing both u and v. */
+
+ unsigned us = eval_lsb(u);
+ unsigned vs = find_lsb(v, mpl::int_<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>::limb_bits>());
+ shift = (std::min)(us, vs);
+ eval_right_shift(u, us);
+ if(vs)
+ v >>= vs;
+
+ do
+ {
+ /* Now u and v are both odd, so diff(u, v) is even.
+ Let u = min(u, v), v = diff(u, v)/2. */
+ if(u.size() == 1)
+ {
+ v = integer_gcd_reduce(*u.limbs(), v);
+ break;
+ }
+ eval_subtract(u, v);
+ us = eval_lsb(u);
+ eval_right_shift(u, us);
+ }
+ while(true);
+
+ result = v;
+ eval_left_shift(result, shift);
+}
+template <unsigned MinBits1, unsigned MaxBits1, cpp_integer_type SignType1, cpp_int_check_type Checked1, class Allocator1, class Integer>
+inline typename enable_if_c<is_unsigned<Integer>::value && (sizeof(Integer) <= sizeof(limb_type)) && !is_trivial_cpp_int<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> >::value>::type
+ eval_gcd(
+ cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& result,
+ const cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& a,
+ const Integer& v)
+{
+ eval_gcd(result, a, static_cast<limb_type>(v));
+}
+template <unsigned MinBits1, unsigned MaxBits1, cpp_integer_type SignType1, cpp_int_check_type Checked1, class Allocator1, class Integer>
+inline typename enable_if_c<is_signed<Integer>::value && (sizeof(Integer) <= sizeof(limb_type)) && !is_trivial_cpp_int<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> >::value>::type
+ eval_gcd(
+ cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& result,
+ const cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& a,
+ const Integer& v)
+{
+ eval_gcd(result, a, static_cast<limb_type>(v < 0 ? -v : v));
+}
+
+template <unsigned MinBits1, unsigned MaxBits1, cpp_integer_type SignType1, cpp_int_check_type Checked1, class Allocator1>
+inline typename enable_if_c<!is_trivial_cpp_int<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> >::value>::type
+ eval_gcd(
+ cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& result,
+ const cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& a,
+ const cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& b)
+{
+ using default_ops::eval_lsb;
+ using default_ops::eval_is_zero;
+ using default_ops::eval_get_sign;
+
+ if(a.size() == 1)
+ {
+ eval_gcd(result, b, *a.limbs());
+ return;
+ }
+ if(b.size() == 1)
+ {
+ eval_gcd(result, a, *b.limbs());
+ }
+
+ int shift;
+
+ cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> u(a), v(b);
+
+ int s = eval_get_sign(u);
+
+ /* GCD(0,x) := x */
+ if(s < 0)
+ {
+ u.negate();
+ }
+ else if(s == 0)
+ {
+ result = v;
+ return;
+ }
+ s = eval_get_sign(v);
+ if(s < 0)
+ {
+ v.negate();
+ }
+ else if(s == 0)
+ {
+ result = u;
+ return;
+ }
+
+ /* Let shift := lg K, where K is the greatest power of 2
+ dividing both u and v. */
+
+ unsigned us = eval_lsb(u);
+ unsigned vs = eval_lsb(v);
+ shift = (std::min)(us, vs);
+ eval_right_shift(u, us);
+ eval_right_shift(v, vs);
+
+ do
+ {
+ /* Now u and v are both odd, so diff(u, v) is even.
+ Let u = min(u, v), v = diff(u, v)/2. */
+ s = u.compare(v);
+ if(s > 0)
+ u.swap(v);
+ if(s == 0)
+ break;
+ if(v.size() <= 2)
+ {
+ if(v.size() == 1)
+ u = integer_gcd_reduce(*v.limbs(), *u.limbs());
+ else
+ {
+ double_limb_type i, j;
+ i = v.limbs()[0] | (static_cast<double_limb_type>(v.limbs()[1]) << sizeof(limb_type) * CHAR_BIT);
+ j = (u.size() == 1) ? *u.limbs() : u.limbs()[0] | (static_cast<double_limb_type>(u.limbs()[1]) << sizeof(limb_type) * CHAR_BIT);
+ u = integer_gcd_reduce(i, j);
+ }
+ break;
+ }
+ eval_subtract(v, u);
+ vs = eval_lsb(v);
+ eval_right_shift(v, vs);
+ }
+ while(true);
+
+ result = u;
+ eval_left_shift(result, shift);
+}
 //
 // Now again for trivial backends:
 //
@@ -309,6 +563,25 @@
       *result = static_cast<R>(*val.limbs());
 }
 
+template <unsigned MinBits1, unsigned MaxBits1, cpp_integer_type SignType1, cpp_int_check_type Checked1, class Allocator1>
+inline typename enable_if_c<is_trivial_cpp_int<cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1> >::value, unsigned>::type
+ eval_lsb(const cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>& a)
+{
+ using default_ops::eval_get_sign;
+ if(eval_get_sign(a) == 0)
+ {
+ BOOST_THROW_EXCEPTION(std::range_error("No bits were set in the operand."));
+ }
+ if(a.sign())
+ {
+ BOOST_THROW_EXCEPTION(std::range_error("Testing individual bits in negative values is not supported - results are undefined."));
+ }
+ //
+ // Find the index of the least significant bit within that limb:
+ //
+ return find_lsb(*a.limbs(), mpl::int_<CHAR_BIT * sizeof(cpp_int_backend<MinBits1, MaxBits1, SignType1, Checked1, Allocator1>::local_limb_type)>());
+}
+
 #ifdef BOOST_MSVC
 #pragma warning(pop)
 #endif

Modified: trunk/boost/multiprecision/detail/functions/pow.hpp
==============================================================================
--- trunk/boost/multiprecision/detail/functions/pow.hpp (original)
+++ trunk/boost/multiprecision/detail/functions/pow.hpp 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -104,8 +104,11 @@
 
    ui_type n;
 
+ static const unsigned series_limit =
+ boost::multiprecision::detail::digits2<number<T, et_on> >::value < 100
+ ? 100 : boost::multiprecision::detail::digits2<number<T, et_on> >::value;
    // Series expansion of hyperg_0f0(; ; x).
- for(n = 2; n < 300; ++n)
+ for(n = 2; n < series_limit; ++n)
    {
       eval_multiply(x_pow_n_div_n_fact, x);
       eval_divide(x_pow_n_div_n_fact, n);
@@ -118,7 +121,7 @@
       if(neg)
          x_pow_n_div_n_fact.negate();
    }
- if(n >= 300)
+ if(n >= series_limit)
       BOOST_THROW_EXCEPTION(std::runtime_error("H0F0 failed to converge"));
 }
 
@@ -153,8 +156,11 @@
    si_type n;
    T term, part;
 
+ static const unsigned series_limit =
+ boost::multiprecision::detail::digits2<number<T, et_on> >::value < 100
+ ? 100 : boost::multiprecision::detail::digits2<number<T, et_on> >::value;
    // Series expansion of hyperg_1f0(a; ; x).
- for(n = 2; n < boost::multiprecision::detail::digits2<number<T, et_on> >::value + 10; n++)
+ for(n = 2; n < series_limit; n++)
    {
       eval_multiply(x_pow_n_div_n_fact, x);
       eval_divide(x_pow_n_div_n_fact, n);
@@ -167,7 +173,7 @@
       if(lim.compare(term) >= 0)
          break;
    }
- if(n >= boost::multiprecision::detail::digits2<number<T, et_on> >::value + 10)
+ if(n >= series_limit)
       BOOST_THROW_EXCEPTION(std::runtime_error("H1F0 failed to converge"));
 }
 

Modified: trunk/boost/multiprecision/detail/functions/trig.hpp
==============================================================================
--- trunk/boost/multiprecision/detail/functions/trig.hpp (original)
+++ trunk/boost/multiprecision/detail/functions/trig.hpp 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -42,8 +42,11 @@
       tol.negate();
    T term;
 
+ static const unsigned series_limit =
+ boost::multiprecision::detail::digits2<number<T, et_on> >::value < 100
+ ? 100 : boost::multiprecision::detail::digits2<number<T, et_on> >::value;
    // Series expansion of hyperg_0f1(; b; x).
- for(n = 2; n < 300; ++n)
+ for(n = 2; n < series_limit; ++n)
    {
       eval_multiply(x_pow_n_div_n_fact, x);
       eval_divide(x_pow_n_div_n_fact, n);
@@ -60,7 +63,7 @@
          break;
    }
 
- if(n >= 300)
+ if(n >= series_limit)
       BOOST_THROW_EXCEPTION(std::runtime_error("H0F1 Failed to Converge"));
 }
 
@@ -399,8 +402,11 @@
    ui_type n;
    T term;
 
+ static const unsigned series_limit =
+ boost::multiprecision::detail::digits2<number<T, et_on> >::value < 100
+ ? 100 : boost::multiprecision::detail::digits2<number<T, et_on> >::value;
    // Series expansion of hyperg_2f1(a, b; c; x).
- for(n = 2; n < 300; ++n)
+ for(n = 2; n < series_limit; ++n)
    {
       eval_multiply(x_pow_n_div_n_fact, x);
       eval_divide(x_pow_n_div_n_fact, n);
@@ -422,7 +428,7 @@
       if(lim.compare(term) >= 0)
          break;
    }
- if(n > 300)
+ if(n > series_limit)
       BOOST_THROW_EXCEPTION(std::runtime_error("H2F1 failed to converge."));
 }
 

Modified: trunk/libs/multiprecision/config/Jamfile.v2
==============================================================================
--- trunk/libs/multiprecision/config/Jamfile.v2 (original)
+++ trunk/libs/multiprecision/config/Jamfile.v2 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -24,6 +24,8 @@
    # We set these to make it easier to set up and test GMP and MPFR under Win32:
    <toolset>msvc:<runtime-link>static
    <toolset>msvc:<link>static
+ <toolset>intel-win:<runtime-link>static
+ <toolset>intel-win:<link>static
    <toolset>msvc:<warnings>all
    <toolset>gcc:<cxxflags>-Wall
    <toolset>gcc:<cxxflags>-Wextra

Modified: trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s01.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s01.html (original)
+++ trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s01.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -22,9 +22,9 @@
 <div class="spirit-nav">
 <a accesskey="p" href="../indexes.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../indexes.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="s02.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
 </div>
-<div class="section id965458">
+<div class="section id975046">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="id965458"></a>Function Index</h3></div></div></div>
+<a name="id975046"></a>Function Index</h3></div></div></div>
 <p><a class="link" href="s01.html#idx_id_0">A</a> <a class="link" href="s01.html#idx_id_1">B</a> <a class="link" href="s01.html#idx_id_2">C</a> <a class="link" href="s01.html#idx_id_3">D</a> <a class="link" href="s01.html#idx_id_4">E</a> <a class="link" href="s01.html#idx_id_5">F</a> <a class="link" href="s01.html#idx_id_7">I</a> <a class="link" href="s01.html#idx_id_8">L</a> <a class="link" href="s01.html#idx_id_9">M</a> <a class="link" href="s01.html#idx_id_12">P</a> <a class="link" href="s01.html#idx_id_13">R</a> <a class="link" href="s01.html#idx_id_14">S</a> <a class="link" href="s01.html#idx_id_15">T</a> <a class="link" href="s01.html#idx_id_17">Z</a></p>
 <div class="variablelist"><dl class="variablelist">
 <dt>

Modified: trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s02.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s02.html (original)
+++ trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s02.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -22,9 +22,9 @@
 <div class="spirit-nav">
 <a accesskey="p" href="s01.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../indexes.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="s03.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
 </div>
-<div class="section id971044">
+<div class="section id981123">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="id971044"></a>Class Index</h3></div></div></div>
+<a name="id981123"></a>Class Index</h3></div></div></div>
 <p><a class="link" href="s02.html#idx_id_20">C</a> <a class="link" href="s02.html#idx_id_22">E</a> <a class="link" href="s02.html#idx_id_24">G</a> <a class="link" href="s02.html#idx_id_25">I</a> <a class="link" href="s02.html#idx_id_27">M</a> <a class="link" href="s02.html#idx_id_28">N</a> <a class="link" href="s02.html#idx_id_33">T</a></p>
 <div class="variablelist"><dl class="variablelist">
 <dt>

Modified: trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s03.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s03.html (original)
+++ trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s03.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -22,9 +22,9 @@
 <div class="spirit-nav">
 <a accesskey="p" href="s02.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../indexes.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="s04.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
 </div>
-<div class="section id971462">
+<div class="section id981540">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="id971462"></a>Typedef Index</h3></div></div></div>
+<a name="id981540"></a>Typedef Index</h3></div></div></div>
 <p><a class="link" href="s03.html#idx_id_38">C</a> <a class="link" href="s03.html#idx_id_43">I</a> <a class="link" href="s03.html#idx_id_44">L</a> <a class="link" href="s03.html#idx_id_45">M</a> <a class="link" href="s03.html#idx_id_50">S</a> <a class="link" href="s03.html#idx_id_51">T</a> <a class="link" href="s03.html#idx_id_52">U</a></p>
 <div class="variablelist"><dl class="variablelist">
 <dt>

Modified: trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s04.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s04.html (original)
+++ trunk/libs/multiprecision/doc/html/boost_multiprecision/indexes/s04.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -21,9 +21,9 @@
 <div class="spirit-nav">
 <a accesskey="p" href="s03.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../indexes.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a>
 </div>
-<div class="section id973008">
+<div class="section id982540">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="id973008"></a>Index</h3></div></div></div>
+<a name="id982540"></a>Index</h3></div></div></div>
 <p><a class="link" href="s04.html#idx_id_54">A</a> <a class="link" href="s04.html#idx_id_55">B</a> <a class="link" href="s04.html#idx_id_56">C</a> <a class="link" href="s04.html#idx_id_57">D</a> <a class="link" href="s04.html#idx_id_58">E</a> <a class="link" href="s04.html#idx_id_59">F</a> <a class="link" href="s04.html#idx_id_60">G</a> <a class="link" href="s04.html#idx_id_61">I</a> <a class="link" href="s04.html#idx_id_62">L</a> <a class="link" href="s04.html#idx_id_63">M</a> <a class="link" href="s04.html#idx_id_64">N</a> <a class="link" href="s04.html#idx_id_65">O</a> <a class="link" href="s04.html#idx_id_66">P</a> <a class="link" href="s04.html#idx_id_67">R</a> <a class="link" href="s04.html#idx_id_68">S</a> <a class="link" href="s04.html#idx_id_69">T</a> <a class="link" href="s04.html#idx_id_70">U</a> <a class="link" href="s04.html#idx_id_71">Z</a></p>
 <div class="variablelist"><dl class="variablelist">
 <dt>

Modified: trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/integer_performance.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/integer_performance.html (original)
+++ trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/integer_performance.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -82,22 +82,22 @@
               </td>
 <td>
                 <p>
- 1.22306 (0.0279933s)
+ 1.23704 (0.0274266s)
                 </p>
               </td>
 <td>
                 <p>
- 1.15878 (0.038341s)
+ 1.09358 (0.0383278s)
                 </p>
               </td>
 <td>
                 <p>
- 1.24006 (0.0562258s)
+ 1.26645 (0.0558828s)
                 </p>
               </td>
 <td>
                 <p>
- 1.32055 (0.0925091s)
+ 1.32188 (0.0916899s)
                 </p>
               </td>
 </tr>
@@ -109,22 +109,22 @@
               </td>
 <td>
                 <p>
- 1.56093 (0.0357264s)
+ 1.62044 (0.0359271s)
                 </p>
               </td>
 <td>
                 <p>
- 1.71757 (0.05683s)
+ 1.5277 (0.053543s)
                 </p>
               </td>
 <td>
                 <p>
- 1.66497 (0.0754916s)
+ 1.73059 (0.076363s)
                 </p>
               </td>
 <td>
                 <p>
- 1.70376 (0.119354s)
+ 1.71537 (0.118983s)
                 </p>
               </td>
 </tr>
@@ -136,22 +136,22 @@
               </td>
 <td>
                 <p>
- 1.98788 (0.0454986s)
+ 1.87515 (0.0415741s)
                 </p>
               </td>
 <td>
                 <p>
- 1.37882 (0.0456216s)
+ 1.21699 (0.042653s)
                 </p>
               </td>
 <td>
                 <p>
- 1.14898 (0.0520959s)
+ 1.15599 (0.0510088s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0700532s)
+ <span class="bold"><strong>1</strong></span> (0.0693631s)
                 </p>
               </td>
 </tr>
@@ -163,22 +163,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.022888s)
+ <span class="bold"><strong>1</strong></span> (0.0221711s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0330875s)
+ <span class="bold"><strong>1</strong></span> (0.035048s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0453411s)
+ <span class="bold"><strong>1</strong></span> (0.0441255s)
                 </p>
               </td>
 <td>
                 <p>
- 1.07021 (0.074972s)
+ 1.04441 (0.0724435s)
                 </p>
               </td>
 </tr>
@@ -231,22 +231,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0162581s)
+ <span class="bold"><strong>1</strong></span> (0.0155377s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0196602s)
+ <span class="bold"><strong>1</strong></span> (0.0209523s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0305476s)
+ <span class="bold"><strong>1</strong></span> (0.0306377s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0421105s)
+ <span class="bold"><strong>1</strong></span> (0.043125s)
                 </p>
               </td>
 </tr>
@@ -258,22 +258,22 @@
               </td>
 <td>
                 <p>
- 1.3852 (0.0225207s)
+ 1.31904 (0.0204948s)
                 </p>
               </td>
 <td>
                 <p>
- 1.84835 (0.036339s)
+ 1.76211 (0.0369203s)
                 </p>
               </td>
 <td>
                 <p>
- 1.6111 (0.0492153s)
+ 1.52941 (0.0468577s)
                 </p>
               </td>
 <td>
                 <p>
- 1.63014 (0.068646s)
+ 1.60412 (0.0691778s)
                 </p>
               </td>
 </tr>
@@ -285,22 +285,22 @@
               </td>
 <td>
                 <p>
- 1.95525 (0.0317886s)
+ 1.96204 (0.0304855s)
                 </p>
               </td>
 <td>
                 <p>
- 2.2217 (0.0436791s)
+ 2.02569 (0.0424428s)
                 </p>
               </td>
 <td>
                 <p>
- 2.21508 (0.0676653s)
+ 2.11505 (0.0648002s)
                 </p>
               </td>
 <td>
                 <p>
- 2.58759 (0.108965s)
+ 2.65993 (0.114709s)
                 </p>
               </td>
 </tr>
@@ -312,22 +312,22 @@
               </td>
 <td>
                 <p>
- 13.603 (0.221158s)
+ 14.0654 (0.218543s)
                 </p>
               </td>
 <td>
                 <p>
- 11.5797 (0.227659s)
+ 10.8239 (0.226786s)
                 </p>
               </td>
 <td>
                 <p>
- 7.86674 (0.24031s)
+ 7.76691 (0.23796s)
                 </p>
               </td>
 <td>
                 <p>
- 6.36923 (0.268212s)
+ 6.10039 (0.263079s)
                 </p>
               </td>
 </tr>
@@ -380,22 +380,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0269712s)
+ <span class="bold"><strong>1</strong></span> (0.026624s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0296213s)
+ <span class="bold"><strong>1</strong></span> (0.0291407s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0380242s)
+ <span class="bold"><strong>1</strong></span> (0.0373209s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.045841s)
+ <span class="bold"><strong>1</strong></span> (0.0464919s)
                 </p>
               </td>
 </tr>
@@ -407,22 +407,22 @@
               </td>
 <td>
                 <p>
- 1.38342 (0.0373126s)
+ 1.31378 (0.034978s)
                 </p>
               </td>
 <td>
                 <p>
- 1.51165 (0.0447769s)
+ 1.54897 (0.045138s)
                 </p>
               </td>
 <td>
                 <p>
- 1.54533 (0.05876s)
+ 1.53649 (0.0573431s)
                 </p>
               </td>
 <td>
                 <p>
- 1.3971 (0.0640443s)
+ 1.27833 (0.0594319s)
                 </p>
               </td>
 </tr>
@@ -434,22 +434,22 @@
               </td>
 <td>
                 <p>
- 26.7163 (0.72057s)
+ 25.5775 (0.680974s)
                 </p>
               </td>
 <td>
                 <p>
- 24.0631 (0.712781s)
+ 24.0117 (0.699717s)
                 </p>
               </td>
 <td>
                 <p>
- 19.6009 (0.745307s)
+ 19.5633 (0.730121s)
                 </p>
               </td>
 <td>
                 <p>
- 17.6547 (0.809308s)
+ 16.8939 (0.785432s)
                 </p>
               </td>
 </tr>
@@ -461,22 +461,22 @@
               </td>
 <td>
                 <p>
- 19.7493 (0.532664s)
+ 19.4694 (0.518354s)
                 </p>
               </td>
 <td>
                 <p>
- 18.2944 (0.541905s)
+ 18.4246 (0.536907s)
                 </p>
               </td>
 <td>
                 <p>
- 14.9127 (0.567043s)
+ 14.7715 (0.551288s)
                 </p>
               </td>
 <td>
                 <p>
- 12.9059 (0.591619s)
+ 12.3637 (0.574812s)
                 </p>
               </td>
 </tr>
@@ -529,22 +529,22 @@
               </td>
 <td>
                 <p>
- 1.16166 (0.020334s)
+ 1.18405 (0.0196905s)
                 </p>
               </td>
 <td>
                 <p>
- 1.15312 (0.0204789s)
+ 1.22304 (0.0206476s)
                 </p>
               </td>
 <td>
                 <p>
- 1.21086 (0.0216179s)
+ 1.25861 (0.0217397s)
                 </p>
               </td>
 <td>
                 <p>
- 1.28088 (0.0229569s)
+ 1.29525 (0.0220829s)
                 </p>
               </td>
 </tr>
@@ -556,22 +556,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0175043s)
+ <span class="bold"><strong>1</strong></span> (0.0166298s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0177595s)
+ <span class="bold"><strong>1</strong></span> (0.0168822s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0178534s)
+ <span class="bold"><strong>1</strong></span> (0.0172728s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0179228s)
+ <span class="bold"><strong>1</strong></span> (0.0170492s)
                 </p>
               </td>
 </tr>
@@ -583,22 +583,22 @@
               </td>
 <td>
                 <p>
- 39.0852 (0.684159s)
+ 39.9082 (0.663668s)
                 </p>
               </td>
 <td>
                 <p>
- 38.7246 (0.68773s)
+ 39.4584 (0.666147s)
                 </p>
               </td>
 <td>
                 <p>
- 38.2555 (0.68299s)
+ 38.5504 (0.665873s)
                 </p>
               </td>
 <td>
                 <p>
- 37.6736 (0.675217s)
+ 39.2231 (0.668722s)
                 </p>
               </td>
 </tr>
@@ -610,22 +610,22 @@
               </td>
 <td>
                 <p>
- 30.5872 (0.535408s)
+ 30.6219 (0.509238s)
                 </p>
               </td>
 <td>
                 <p>
- 29.371 (0.521614s)
+ 30.4135 (0.513447s)
                 </p>
               </td>
 <td>
                 <p>
- 30.3387 (0.541648s)
+ 30.9077 (0.533863s)
                 </p>
               </td>
 <td>
                 <p>
- 31.8346 (0.570565s)
+ 32.3086 (0.550835s)
                 </p>
               </td>
 </tr>
@@ -678,22 +678,22 @@
               </td>
 <td>
                 <p>
- 1.12975 (0.0308979s)
+ 1.06986 (0.0296064s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0392305s)
+ <span class="bold"><strong>1</strong></span> (0.0381508s)
                 </p>
               </td>
 <td>
                 <p>
- 1.05392 (0.0543957s)
+ 1.05932 (0.053186s)
                 </p>
               </td>
 <td>
                 <p>
- 1.18166 (0.0860767s)
+ 1.1766 (0.0844721s)
                 </p>
               </td>
 </tr>
@@ -705,22 +705,22 @@
               </td>
 <td>
                 <p>
- 1.36853 (0.0374283s)
+ 1.3304 (0.0368163s)
                 </p>
               </td>
 <td>
                 <p>
- 1.45987 (0.0572717s)
+ 1.44506 (0.0551303s)
                 </p>
               </td>
 <td>
                 <p>
- 1.44606 (0.0746349s)
+ 1.4431 (0.0724545s)
                 </p>
               </td>
 <td>
                 <p>
- 1.55935 (0.11359s)
+ 1.57255 (0.112898s)
                 </p>
               </td>
 </tr>
@@ -732,22 +732,22 @@
               </td>
 <td>
                 <p>
- 1.53173 (0.0418917s)
+ 1.48072 (0.0409761s)
                 </p>
               </td>
 <td>
                 <p>
- 1.17956 (0.0462749s)
+ 1.19003 (0.0454007s)
                 </p>
               </td>
 <td>
                 <p>
- 1.13609 (0.0586365s)
+ 1.0794 (0.0541942s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0728442s)
+ <span class="bold"><strong>1</strong></span> (0.0717934s)
                 </p>
               </td>
 </tr>
@@ -759,22 +759,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0273493s)
+ <span class="bold"><strong>1</strong></span> (0.0276731s)
                 </p>
               </td>
 <td>
                 <p>
- 1.07293 (0.0420917s)
+ 1.10891 (0.0423057s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0516126s)
+ <span class="bold"><strong>1</strong></span> (0.0502076s)
                 </p>
               </td>
 <td>
                 <p>
- 1.0985 (0.0800191s)
+ 1.08479 (0.0778811s)
                 </p>
               </td>
 </tr>
@@ -827,22 +827,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0146171s)
+ <span class="bold"><strong>1</strong></span> (0.0147372s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0172176s)
+ <span class="bold"><strong>1</strong></span> (0.0170001s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.023655s)
+ <span class="bold"><strong>1</strong></span> (0.0232882s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0313105s)
+ <span class="bold"><strong>1</strong></span> (0.0310734s)
                 </p>
               </td>
 </tr>
@@ -854,22 +854,22 @@
               </td>
 <td>
                 <p>
- 1.49086 (0.021792s)
+ 1.4267 (0.0210256s)
                 </p>
               </td>
 <td>
                 <p>
- 1.94917 (0.03356s)
+ 1.98887 (0.0338109s)
                 </p>
               </td>
 <td>
                 <p>
- 1.89657 (0.0448632s)
+ 1.83788 (0.0428009s)
                 </p>
               </td>
 <td>
                 <p>
- 1.82658 (0.057191s)
+ 1.81269 (0.0563264s)
                 </p>
               </td>
 </tr>
@@ -881,22 +881,22 @@
               </td>
 <td>
                 <p>
- 2.16301 (0.0316169s)
+ 2.07504 (0.0305803s)
                 </p>
               </td>
 <td>
                 <p>
- 2.55059 (0.0439151s)
+ 2.40928 (0.0409579s)
                 </p>
               </td>
 <td>
                 <p>
- 2.67983 (0.0633913s)
+ 2.58711 (0.0602493s)
                 </p>
               </td>
 <td>
                 <p>
- 3.27949 (0.102682s)
+ 3.26438 (0.101435s)
                 </p>
               </td>
 </tr>
@@ -908,22 +908,22 @@
               </td>
 <td>
                 <p>
- 14.0691 (0.20565s)
+ 13.5424 (0.199577s)
                 </p>
               </td>
 <td>
                 <p>
- 12.527 (0.215684s)
+ 12.1793 (0.207048s)
                 </p>
               </td>
 <td>
                 <p>
- 9.43355 (0.22315s)
+ 9.28855 (0.216314s)
                 </p>
               </td>
 <td>
                 <p>
- 7.64671 (0.239422s)
+ 7.49327 (0.232842s)
                 </p>
               </td>
 </tr>
@@ -976,22 +976,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0265242s)
+ <span class="bold"><strong>1</strong></span> (0.0277377s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0295275s)
+ <span class="bold"><strong>1</strong></span> (0.0296807s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0377737s)
+ <span class="bold"><strong>1</strong></span> (0.0372392s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0450106s)
+ <span class="bold"><strong>1</strong></span> (0.0455855s)
                 </p>
               </td>
 </tr>
@@ -1003,22 +1003,22 @@
               </td>
 <td>
                 <p>
- 1.2627 (0.033492s)
+ 1.19867 (0.0332484s)
                 </p>
               </td>
 <td>
                 <p>
- 1.47472 (0.0435449s)
+ 1.48639 (0.0441169s)
                 </p>
               </td>
 <td>
                 <p>
- 1.47468 (0.055704s)
+ 1.43253 (0.0533464s)
                 </p>
               </td>
 <td>
                 <p>
- 1.40667 (0.0633151s)
+ 1.27697 (0.0582111s)
                 </p>
               </td>
 </tr>
@@ -1030,22 +1030,22 @@
               </td>
 <td>
                 <p>
- 26.0595 (0.691208s)
+ 24.1794 (0.670683s)
                 </p>
               </td>
 <td>
                 <p>
- 23.3957 (0.690817s)
+ 22.9073 (0.679904s)
                 </p>
               </td>
 <td>
                 <p>
- 18.9344 (0.715223s)
+ 18.8758 (0.702922s)
                 </p>
               </td>
 <td>
                 <p>
- 16.9593 (0.763349s)
+ 16.5837 (0.755975s)
                 </p>
               </td>
 </tr>
@@ -1057,22 +1057,22 @@
               </td>
 <td>
                 <p>
- 19.26 (0.510855s)
+ 18.149 (0.503413s)
                 </p>
               </td>
 <td>
                 <p>
- 17.6236 (0.52038s)
+ 17.4116 (0.516787s)
                 </p>
               </td>
 <td>
                 <p>
- 13.9134 (0.52556s)
+ 14.0411 (0.52288s)
                 </p>
               </td>
 <td>
                 <p>
- 12.2359 (0.550746s)
+ 11.8237 (0.538987s)
                 </p>
               </td>
 </tr>
@@ -1125,22 +1125,22 @@
               </td>
 <td>
                 <p>
- 1.28589 (0.0210146s)
+ 1.26896 (0.0203467s)
                 </p>
               </td>
 <td>
                 <p>
- 1.3505 (0.0222463s)
+ 1.25722 (0.0206147s)
                 </p>
               </td>
 <td>
                 <p>
- 1.34427 (0.0237863s)
+ 1.36108 (0.0225485s)
                 </p>
               </td>
 <td>
                 <p>
- 1.22787 (0.0230902s)
+ 1.18351 (0.0226161s)
                 </p>
               </td>
 </tr>
@@ -1152,22 +1152,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0163425s)
+ <span class="bold"><strong>1</strong></span> (0.0160342s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0164727s)
+ <span class="bold"><strong>1</strong></span> (0.0163971s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0176946s)
+ <span class="bold"><strong>1</strong></span> (0.0165667s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0188051s)
+ <span class="bold"><strong>1</strong></span> (0.0191094s)
                 </p>
               </td>
 </tr>
@@ -1179,22 +1179,22 @@
               </td>
 <td>
                 <p>
- 41.0201 (0.670371s)
+ 41.1339 (0.659547s)
                 </p>
               </td>
 <td>
                 <p>
- 41.4726 (0.683165s)
+ 40.3982 (0.662411s)
                 </p>
               </td>
 <td>
                 <p>
- 37.9503 (0.671514s)
+ 39.925 (0.661425s)
                 </p>
               </td>
 <td>
                 <p>
- 35.6021 (0.669502s)
+ 34.636 (0.661874s)
                 </p>
               </td>
 </tr>
@@ -1206,22 +1206,22 @@
               </td>
 <td>
                 <p>
- 32.6952 (0.534322s)
+ 31.1543 (0.499533s)
                 </p>
               </td>
 <td>
                 <p>
- 31.4882 (0.518695s)
+ 31.0303 (0.508806s)
                 </p>
               </td>
 <td>
                 <p>
- 29.3988 (0.5202s)
+ 30.7699 (0.509756s)
                 </p>
               </td>
 <td>
                 <p>
- 29.1175 (0.547558s)
+ 27.7054 (0.529434s)
                 </p>
               </td>
 </tr>
@@ -1274,22 +1274,22 @@
               </td>
 <td>
                 <p>
- 1.13172 (0.0766099s)
+ 1.11839 (0.0757577s)
                 </p>
               </td>
 <td>
                 <p>
- 1.59509 (0.20993s)
+ 1.61061 (0.207951s)
                 </p>
               </td>
 <td>
                 <p>
- 1.40998 (0.70643s)
+ 1.4501 (0.696912s)
                 </p>
               </td>
 <td>
                 <p>
- 1.70758 (2.66895s)
+ 1.72796 (2.64108s)
                 </p>
               </td>
 </tr>
@@ -1301,22 +1301,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.067693s)
+ 1.01115 (0.0684934s)
                 </p>
               </td>
 <td>
                 <p>
- 1.27132 (0.167319s)
+ 1.28687 (0.166152s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.50102s)
+ <span class="bold"><strong>1</strong></span> (0.480595s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (1.563s)
+ <span class="bold"><strong>1</strong></span> (1.52844s)
                 </p>
               </td>
 </tr>
@@ -1328,22 +1328,22 @@
               </td>
 <td>
                 <p>
- 1.01718 (0.0688559s)
+ <span class="bold"><strong>1</strong></span> (0.0677384s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.13161s)
+ <span class="bold"><strong>1</strong></span> (0.129113s)
                 </p>
               </td>
 <td>
                 <p>
- 1.13221 (0.567258s)
+ 1.09011 (0.523902s)
                 </p>
               </td>
 <td>
                 <p>
- 1.02292 (1.59883s)
+ 1.03374 (1.58s)
                 </p>
               </td>
 </tr>
@@ -1355,22 +1355,22 @@
               </td>
 <td>
                 <p>
- 1.6793 (0.113677s)
+ 1.6322 (0.110562s)
                 </p>
               </td>
 <td>
                 <p>
- 2.66959 (0.351345s)
+ 2.71751 (0.350866s)
                 </p>
               </td>
 <td>
                 <p>
- 2.01091 (1.00751s)
+ 2.05222 (0.986288s)
                 </p>
               </td>
 <td>
                 <p>
- 2.05812 (3.21684s)
+ 2.0644 (3.15531s)
                 </p>
               </td>
 </tr>
@@ -1423,22 +1423,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0228822s)
+ 1.01611 (0.0229536s)
                 </p>
               </td>
 <td>
                 <p>
- 1.19988 (0.0332404s)
+ 1.12175 (0.0298152s)
                 </p>
               </td>
 <td>
                 <p>
- 1.13882 (0.0416226s)
+ 1.16413 (0.0416439s)
                 </p>
               </td>
 <td>
                 <p>
- 1.2711 (0.0665655s)
+ 1.31747 (0.0666043s)
                 </p>
               </td>
 </tr>
@@ -1450,22 +1450,22 @@
               </td>
 <td>
                 <p>
- 1.33157 (0.0304692s)
+ 1.30215 (0.0294152s)
                 </p>
               </td>
 <td>
                 <p>
- 1.6546 (0.0458376s)
+ 1.669 (0.0443606s)
                 </p>
               </td>
 <td>
                 <p>
- 1.72684 (0.063114s)
+ 1.72395 (0.0616701s)
                 </p>
               </td>
 <td>
                 <p>
- 1.83178 (0.0959269s)
+ 1.88315 (0.095202s)
                 </p>
               </td>
 </tr>
@@ -1477,22 +1477,22 @@
               </td>
 <td>
                 <p>
- 1.00858 (0.0230786s)
+ <span class="bold"><strong>1</strong></span> (0.0225897s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0277032s)
+ <span class="bold"><strong>1</strong></span> (0.0265791s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0365488s)
+ <span class="bold"><strong>1</strong></span> (0.0357725s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0523682s)
+ <span class="bold"><strong>1</strong></span> (0.0505547s)
                 </p>
               </td>
 </tr>
@@ -1504,22 +1504,22 @@
               </td>
 <td>
                 <p>
- 10.8491 (0.248252s)
+ 10.8281 (0.244603s)
                 </p>
               </td>
 <td>
                 <p>
- 9.88511 (0.273849s)
+ 10.1516 (0.26982s)
                 </p>
               </td>
 <td>
                 <p>
- 8.95509 (0.327298s)
+ 8.76424 (0.313519s)
                 </p>
               </td>
 <td>
                 <p>
- 8.04172 (0.421131s)
+ 8.04364 (0.406644s)
                 </p>
               </td>
 </tr>
@@ -1572,22 +1572,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0574926s)
+ <span class="bold"><strong>1</strong></span> (0.0570721s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0876613s)
+ <span class="bold"><strong>1</strong></span> (0.0856141s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.146194s)
+ <span class="bold"><strong>1</strong></span> (0.143279s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.258556s)
+ <span class="bold"><strong>1</strong></span> (0.252785s)
                 </p>
               </td>
 </tr>
@@ -1599,22 +1599,22 @@
               </td>
 <td>
                 <p>
- 1.12247 (0.0645337s)
+ 1.10857 (0.0632686s)
                 </p>
               </td>
 <td>
                 <p>
- 1.24471 (0.109113s)
+ 1.2951 (0.110878s)
                 </p>
               </td>
 <td>
                 <p>
- 1.19748 (0.175065s)
+ 1.20827 (0.173121s)
                 </p>
               </td>
 <td>
                 <p>
- 1.17442 (0.303653s)
+ 1.18463 (0.299456s)
                 </p>
               </td>
 </tr>
@@ -1626,22 +1626,22 @@
               </td>
 <td>
                 <p>
- 12.271 (0.705488s)
+ 12.0605 (0.68832s)
                 </p>
               </td>
 <td>
                 <p>
- 8.23054 (0.7215s)
+ 8.13434 (0.696415s)
                 </p>
               </td>
 <td>
                 <p>
- 5.28668 (0.772883s)
+ 5.21762 (0.747577s)
                 </p>
               </td>
 <td>
                 <p>
- 3.09816 (0.801047s)
+ 3.11601 (0.787681s)
                 </p>
               </td>
 </tr>
@@ -1653,22 +1653,22 @@
               </td>
 <td>
                 <p>
- 10.2751 (0.590743s)
+ 10.0524 (0.57371s)
                 </p>
               </td>
 <td>
                 <p>
- 7.36707 (0.645807s)
+ 7.33116 (0.627651s)
                 </p>
               </td>
 <td>
                 <p>
- 4.88979 (0.71486s)
+ 4.85202 (0.695193s)
                 </p>
               </td>
 <td>
                 <p>
- 3.43724 (0.888719s)
+ 3.35808 (0.848871s)
                 </p>
               </td>
 </tr>
@@ -1721,22 +1721,22 @@
               </td>
 <td>
                 <p>
- 114.922 (7.57662s)
+ 111.27 (7.43118s)
                 </p>
               </td>
 <td>
                 <p>
- 70.5882 (7.61458s)
+ 67.7078 (7.34138s)
                 </p>
               </td>
 <td>
                 <p>
- 44.3157 (7.67791s)
+ 43.3851 (7.4075s)
                 </p>
               </td>
 <td>
                 <p>
- 26.2881 (7.81595s)
+ 25.3089 (7.55455s)
                 </p>
               </td>
 </tr>
@@ -1748,22 +1748,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0659286s)
+ <span class="bold"><strong>1</strong></span> (0.0667848s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.107873s)
+ <span class="bold"><strong>1</strong></span> (0.108427s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.173255s)
+ <span class="bold"><strong>1</strong></span> (0.170738s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.297319s)
+ <span class="bold"><strong>1</strong></span> (0.298493s)
                 </p>
               </td>
 </tr>
@@ -1775,22 +1775,22 @@
               </td>
 <td>
                 <p>
- 47.9828 (3.16344s)
+ 46.3718 (3.09693s)
                 </p>
               </td>
 <td>
                 <p>
- 29.4972 (3.18196s)
+ 28.4639 (3.08626s)
                 </p>
               </td>
 <td>
                 <p>
- 18.1719 (3.14838s)
+ 18.1719 (3.10264s)
                 </p>
               </td>
 <td>
                 <p>
- 10.6941 (3.17956s)
+ 10.5223 (3.14083s)
                 </p>
               </td>
 </tr>
@@ -1802,22 +1802,22 @@
               </td>
 <td>
                 <p>
- 284.199 (18.7368s)
+ 276.674 (18.4776s)
                 </p>
               </td>
 <td>
                 <p>
- 173.129 (18.676s)
+ 169.146 (18.34s)
                 </p>
               </td>
 <td>
                 <p>
- 109.052 (18.8938s)
+ 108.491 (18.5236s)
                 </p>
               </td>
 <td>
                 <p>
- 64.5866 (19.2028s)
+ 63.3261 (18.9024s)
                 </p>
               </td>
 </tr>
@@ -1870,22 +1870,22 @@
               </td>
 <td>
                 <p>
- 2.71618 (0.616086s)
+ 2.68035 (0.595251s)
                 </p>
               </td>
 <td>
                 <p>
- 2.09988 (0.737246s)
+ 2.04702 (0.707471s)
                 </p>
               </td>
 <td>
                 <p>
- 1.65898 (0.94343s)
+ 1.62314 (0.921536s)
                 </p>
               </td>
 <td>
                 <p>
- 1.49441 (1.44418s)
+ 1.43112 (1.38811s)
                 </p>
               </td>
 </tr>
@@ -1897,22 +1897,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.226821s)
+ <span class="bold"><strong>1</strong></span> (0.222079s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.35109s)
+ <span class="bold"><strong>1</strong></span> (0.34561s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.56868s)
+ <span class="bold"><strong>1</strong></span> (0.567748s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.966385s)
+ <span class="bold"><strong>1</strong></span> (0.969945s)
                 </p>
               </td>
 </tr>
@@ -1924,22 +1924,22 @@
               </td>
 <td>
                 <p>
- 3.82134 (0.866761s)
+ 3.79283 (0.842308s)
                 </p>
               </td>
 <td>
                 <p>
- 2.75998 (0.969001s)
+ 2.73668 (0.945824s)
                 </p>
               </td>
 <td>
                 <p>
- 1.93226 (1.09884s)
+ 1.86649 (1.05969s)
                 </p>
               </td>
 <td>
                 <p>
- 1.34132 (1.29623s)
+ 1.32141 (1.2817s)
                 </p>
               </td>
 </tr>
@@ -1951,22 +1951,22 @@
               </td>
 <td>
                 <p>
- 13.2978 (3.01622s)
+ 13.2531 (2.94324s)
                 </p>
               </td>
 <td>
                 <p>
- 11.3314 (3.97833s)
+ 11.2054 (3.87271s)
                 </p>
               </td>
 <td>
                 <p>
- 9.94138 (5.65347s)
+ 9.83293 (5.58262s)
                 </p>
               </td>
 <td>
                 <p>
- 13.3423 (12.8938s)
+ 13.0164 (12.6252s)
                 </p>
               </td>
 </tr>
@@ -2019,22 +2019,22 @@
               </td>
 <td>
                 <p>
- 4.15094 (0.23911s)
+ 4.06026 (0.225473s)
                 </p>
               </td>
 <td>
                 <p>
- 3.57962 (0.356615s)
+ 3.45732 (0.340049s)
                 </p>
               </td>
 <td>
                 <p>
- 3.11624 (0.578256s)
+ 3.00195 (0.547957s)
                 </p>
               </td>
 <td>
                 <p>
- 2.82967 (1.00414s)
+ 2.80587 (0.978029s)
                 </p>
               </td>
 </tr>
@@ -2046,22 +2046,22 @@
               </td>
 <td>
                 <p>
- 2.42806 (0.139865s)
+ 2.43766 (0.135367s)
                 </p>
               </td>
 <td>
                 <p>
- 2.54164 (0.253208s)
+ 2.56264 (0.252052s)
                 </p>
               </td>
 <td>
                 <p>
- 2.43025 (0.450962s)
+ 2.44011 (0.445402s)
                 </p>
               </td>
 <td>
                 <p>
- 2.37209 (0.841768s)
+ 2.38009 (0.829617s)
                 </p>
               </td>
 </tr>
@@ -2073,22 +2073,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0576038s)
+ <span class="bold"><strong>1</strong></span> (0.0555316s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0996238s)
+ <span class="bold"><strong>1</strong></span> (0.0983563s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.185562s)
+ <span class="bold"><strong>1</strong></span> (0.182534s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.354863s)
+ <span class="bold"><strong>1</strong></span> (0.348566s)
                 </p>
               </td>
 </tr>
@@ -2100,22 +2100,22 @@
               </td>
 <td>
                 <p>
- 36.3133 (2.09179s)
+ 35.9988 (1.99907s)
                 </p>
               </td>
 <td>
                 <p>
- 28.2731 (2.81668s)
+ 27.1024 (2.66569s)
                 </p>
               </td>
 <td>
                 <p>
- 21.8589 (4.05618s)
+ 21.8333 (3.98531s)
                 </p>
               </td>
 <td>
                 <p>
- 25.8061 (9.15762s)
+ 25.8066 (8.99528s)
                 </p>
               </td>
 </tr>
@@ -2168,22 +2168,22 @@
               </td>
 <td>
                 <p>
- 1.53953 (0.716927s)
+ 1.50505 (0.705756s)
                 </p>
               </td>
 <td>
                 <p>
- 1.40156 (1.65075s)
+ 1.39347 (1.58556s)
                 </p>
               </td>
 <td>
                 <p>
- 2.59584 (3.57744s)
+ 2.63348 (3.57438s)
                 </p>
               </td>
 <td>
                 <p>
- 4.58524 (8.3789s)
+ 4.75451 (8.52733s)
                 </p>
               </td>
 </tr>
@@ -2195,22 +2195,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.465679s)
+ <span class="bold"><strong>1</strong></span> (0.468925s)
                 </p>
               </td>
 <td>
                 <p>
- 1.09556 (1.29034s)
+ 1.12378 (1.27869s)
                 </p>
               </td>
 <td>
                 <p>
- 2.2858 (3.15016s)
+ 2.29966 (3.12128s)
                 </p>
               </td>
 <td>
                 <p>
- 4.40115 (8.0425s)
+ 4.4844 (8.04288s)
                 </p>
               </td>
 </tr>
@@ -2222,22 +2222,22 @@
               </td>
 <td>
                 <p>
- 2.25405 (1.04967s)
+ 2.17234 (1.01866s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (1.17779s)
+ <span class="bold"><strong>1</strong></span> (1.13785s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (1.37814s)
+ <span class="bold"><strong>1</strong></span> (1.35728s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (1.82736s)
+ <span class="bold"><strong>1</strong></span> (1.79352s)
                 </p>
               </td>
 </tr>
@@ -2249,22 +2249,22 @@
               </td>
 <td>
                 <p>
- 5.03884 (2.34648s)
+ 4.74612 (2.22557s)
                 </p>
               </td>
 <td>
                 <p>
- 2.63459 (3.103s)
+ 2.70088 (3.07319s)
                 </p>
               </td>
 <td>
                 <p>
- 3.67287 (5.06174s)
+ 3.65634 (4.96268s)
                 </p>
               </td>
 <td>
                 <p>
- 6.77479 (12.38s)
+ 6.79408 (12.1853s)
                 </p>
               </td>
 </tr>
@@ -2317,22 +2317,22 @@
               </td>
 <td>
                 <p>
- 1.78744 (0.0586752s)
+ 1.76281 (0.0574966s)
                 </p>
               </td>
 <td>
                 <p>
- 1.74065 (0.0616578s)
+ 1.76471 (0.0604224s)
                 </p>
               </td>
 <td>
                 <p>
- 1.66814 (0.0740436s)
+ 1.56085 (0.0716403s)
                 </p>
               </td>
 <td>
                 <p>
- 1.36231 (0.126362s)
+ 1.31422 (0.124043s)
                 </p>
               </td>
 </tr>
@@ -2344,22 +2344,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0328264s)
+ <span class="bold"><strong>1</strong></span> (0.0326164s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0354222s)
+ <span class="bold"><strong>1</strong></span> (0.0342393s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0443871s)
+ <span class="bold"><strong>1</strong></span> (0.0458981s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0927553s)
+ <span class="bold"><strong>1</strong></span> (0.0943852s)
                 </p>
               </td>
 </tr>
@@ -2371,22 +2371,22 @@
               </td>
 <td>
                 <p>
- 21.2392 (0.697207s)
+ 20.2862 (0.661664s)
                 </p>
               </td>
 <td>
                 <p>
- 19.3517 (0.68548s)
+ 19.4043 (0.664389s)
                 </p>
               </td>
 <td>
                 <p>
- 15.2936 (0.678837s)
+ 14.4881 (0.664976s)
                 </p>
               </td>
 <td>
                 <p>
- 7.37138 (0.683734s)
+ 7.14238 (0.674135s)
                 </p>
               </td>
 </tr>
@@ -2398,22 +2398,22 @@
               </td>
 <td>
                 <p>
- 32.8142 (1.07717s)
+ 32.9555 (1.07489s)
                 </p>
               </td>
 <td>
                 <p>
- 30.5556 (1.08235s)
+ 30.1525 (1.0324s)
                 </p>
               </td>
 <td>
                 <p>
- 24.7236 (1.09741s)
+ 22.8324 (1.04796s)
                 </p>
               </td>
 <td>
                 <p>
- 12.4072 (1.15084s)
+ 11.7456 (1.10861s)
                 </p>
               </td>
 </tr>
@@ -2466,22 +2466,22 @@
               </td>
 <td>
                 <p>
- 1.86833 (0.37472s)
+ 1.8501 (0.364131s)
                 </p>
               </td>
 <td>
                 <p>
- 1.43076 (0.491332s)
+ 1.46527 (0.476653s)
                 </p>
               </td>
 <td>
                 <p>
- 1.30757 (0.708055s)
+ 1.27509 (0.689738s)
                 </p>
               </td>
 <td>
                 <p>
- 1.2528 (1.15842s)
+ 1.20064 (1.11769s)
                 </p>
               </td>
 </tr>
@@ -2493,22 +2493,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.200565s)
+ <span class="bold"><strong>1</strong></span> (0.196817s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.343407s)
+ <span class="bold"><strong>1</strong></span> (0.325301s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.541503s)
+ <span class="bold"><strong>1</strong></span> (0.540932s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.924662s)
+ <span class="bold"><strong>1</strong></span> (0.930916s)
                 </p>
               </td>
 </tr>
@@ -2520,22 +2520,22 @@
               </td>
 <td>
                 <p>
- 3.22603 (0.647027s)
+ 3.2533 (0.640305s)
                 </p>
               </td>
 <td>
                 <p>
- 2.08249 (0.715143s)
+ 2.15441 (0.700832s)
                 </p>
               </td>
 <td>
                 <p>
- 1.5148 (0.82027s)
+ 1.47898 (0.800029s)
                 </p>
               </td>
 <td>
                 <p>
- 1.09519 (1.01268s)
+ 1.07439 (1.00016s)
                 </p>
               </td>
 </tr>
@@ -2547,22 +2547,22 @@
               </td>
 <td>
                 <p>
- 15.4642 (3.10158s)
+ 15.3501 (3.02116s)
                 </p>
               </td>
 <td>
                 <p>
- 11.5534 (3.9675s)
+ 12.1106 (3.9396s)
                 </p>
               </td>
 <td>
                 <p>
- 10.5164 (5.69467s)
+ 11.0689 (5.98752s)
                 </p>
               </td>
 <td>
                 <p>
- 13.8962 (12.8493s)
+ 13.5535 (12.6172s)
                 </p>
               </td>
 </tr>
@@ -2615,22 +2615,22 @@
               </td>
 <td>
                 <p>
- 1.80079 (0.106617s)
+ 1.82761 (0.104331s)
                 </p>
               </td>
 <td>
                 <p>
- 1.96413 (0.207216s)
+ 2.01496 (0.202512s)
                 </p>
               </td>
 <td>
                 <p>
- 2.09096 (0.395682s)
+ 2.10004 (0.389523s)
                 </p>
               </td>
 <td>
                 <p>
- 2.14767 (0.776873s)
+ 2.17252 (0.768097s)
                 </p>
               </td>
 </tr>
@@ -2642,22 +2642,22 @@
               </td>
 <td>
                 <p>
- 1.73532 (0.10274s)
+ 1.78851 (0.102099s)
                 </p>
               </td>
 <td>
                 <p>
- 1.92036 (0.202599s)
+ 1.96844 (0.197838s)
                 </p>
               </td>
 <td>
                 <p>
- 2.02172 (0.382579s)
+ 2.02956 (0.376451s)
                 </p>
               </td>
 <td>
                 <p>
- 2.07328 (0.749963s)
+ 2.07257 (0.73276s)
                 </p>
               </td>
 </tr>
@@ -2669,22 +2669,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0592053s)
+ <span class="bold"><strong>1</strong></span> (0.057086s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.1055s)
+ <span class="bold"><strong>1</strong></span> (0.100505s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.189234s)
+ <span class="bold"><strong>1</strong></span> (0.185483s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.361727s)
+ <span class="bold"><strong>1</strong></span> (0.353552s)
                 </p>
               </td>
 </tr>
@@ -2696,22 +2696,22 @@
               </td>
 <td>
                 <p>
- 35.6993 (2.11359s)
+ 36.3018 (2.07233s)
                 </p>
               </td>
 <td>
                 <p>
- 25.3086 (2.67007s)
+ 26.3075 (2.64402s)
                 </p>
               </td>
 <td>
                 <p>
- 21.2701 (4.02504s)
+ 21.9525 (4.07183s)
                 </p>
               </td>
 <td>
                 <p>
- 25.8662 (9.3565s)
+ 25.6759 (9.07775s)
                 </p>
               </td>
 </tr>
@@ -2764,22 +2764,22 @@
               </td>
 <td>
                 <p>
- 1.17135 (0.00274853s)
+ 1.40211 (0.0026854s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00275161s)
+ <span class="bold"><strong>1</strong></span> (0.00278639s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00275161s)
+ <span class="bold"><strong>1</strong></span> (0.00322813s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00344359s)
+ <span class="bold"><strong>1</strong></span> (0.0027185s)
                 </p>
               </td>
 </tr>
@@ -2791,22 +2791,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00234646s)
+ <span class="bold"><strong>1</strong></span> (0.00191526s)
                 </p>
               </td>
 <td>
                 <p>
- 1.54518 (0.00425173s)
+ 1.40721 (0.00392103s)
                 </p>
               </td>
 <td>
                 <p>
- 2.2494 (0.00618947s)
+ 1.90346 (0.00614463s)
                 </p>
               </td>
 <td>
                 <p>
- 1.73247 (0.00596591s)
+ 2.14621 (0.00583447s)
                 </p>
               </td>
 </tr>
@@ -2818,22 +2818,22 @@
               </td>
 <td>
                 <p>
- 85.6802 (0.201045s)
+ 98.705 (0.189046s)
                 </p>
               </td>
 <td>
                 <p>
- 72.6635 (0.199941s)
+ 68.9726 (0.192184s)
                 </p>
               </td>
 <td>
                 <p>
- 78.1286 (0.214979s)
+ 58.8994 (0.190135s)
                 </p>
               </td>
 <td>
                 <p>
- 58.3553 (0.200952s)
+ 70.0525 (0.190438s)
                 </p>
               </td>
 </tr>
@@ -2845,22 +2845,22 @@
               </td>
 <td>
                 <p>
- 87.9831 (0.206449s)
+ 105.602 (0.202255s)
                 </p>
               </td>
 <td>
                 <p>
- 74.8522 (0.205964s)
+ 74.1994 (0.206748s)
                 </p>
               </td>
 <td>
                 <p>
- 74.8918 (0.206073s)
+ 63.6455 (0.205456s)
                 </p>
               </td>
 <td>
                 <p>
- 63.4572 (0.218521s)
+ 76.8935 (0.209035s)
                 </p>
               </td>
 </tr>
@@ -2913,22 +2913,22 @@
               </td>
 <td>
                 <p>
- 1.43934 (0.00268554s)
+ 1.73436 (0.00348927s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00286887s)
+ <span class="bold"><strong>1</strong></span> (0.00263476s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00283465s)
+ <span class="bold"><strong>1</strong></span> (0.0027009s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00290638s)
+ <span class="bold"><strong>1</strong></span> (0.00318651s)
                 </p>
               </td>
 </tr>
@@ -2940,22 +2940,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00186581s)
+ <span class="bold"><strong>1</strong></span> (0.00201185s)
                 </p>
               </td>
 <td>
                 <p>
- 1.7597 (0.00504834s)
+ 1.36851 (0.0036057s)
                 </p>
               </td>
 <td>
                 <p>
- 2.07419 (0.00587959s)
+ 2.07362 (0.00560064s)
                 </p>
               </td>
 <td>
                 <p>
- 1.89871 (0.00551837s)
+ 1.66856 (0.00531688s)
                 </p>
               </td>
 </tr>
@@ -2967,22 +2967,22 @@
               </td>
 <td>
                 <p>
- 125.861 (0.234832s)
+ 97.2414 (0.195635s)
                 </p>
               </td>
 <td>
                 <p>
- 72.7068 (0.208586s)
+ 76.3759 (0.201232s)
                 </p>
               </td>
 <td>
                 <p>
- 75.5147 (0.214058s)
+ 72.7396 (0.196462s)
                 </p>
               </td>
 <td>
                 <p>
- 71.2679 (0.207131s)
+ 63.8129 (0.20334s)
                 </p>
               </td>
 </tr>
@@ -2994,22 +2994,22 @@
               </td>
 <td>
                 <p>
- 240.568 (0.448854s)
+ 210.112 (0.422713s)
                 </p>
               </td>
 <td>
                 <p>
- 155.552 (0.446257s)
+ 162.652 (0.42855s)
                 </p>
               </td>
 <td>
                 <p>
- 157.598 (0.446734s)
+ 158.33 (0.427634s)
                 </p>
               </td>
 <td>
                 <p>
- 160.728 (0.467137s)
+ 134.626 (0.428987s)
                 </p>
               </td>
 </tr>
@@ -3062,22 +3062,22 @@
               </td>
 <td>
                 <p>
- 2.3528 (0.00771495s)
+ 2.34403 (0.00739542s)
                 </p>
               </td>
 <td>
                 <p>
- 1.61678 (0.00717424s)
+ 1.66376 (0.00713834s)
                 </p>
               </td>
 <td>
                 <p>
- 1.12087 (0.00715985s)
+ 1.22989 (0.0074969s)
                 </p>
               </td>
 <td>
                 <p>
- 1.2104 (0.0078878s)
+ 1.23708 (0.00711417s)
                 </p>
               </td>
 </tr>
@@ -3089,22 +3089,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00327905s)
+ <span class="bold"><strong>1</strong></span> (0.00315501s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00443737s)
+ <span class="bold"><strong>1</strong></span> (0.00429049s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00638775s)
+ <span class="bold"><strong>1</strong></span> (0.00609561s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00651668s)
+ <span class="bold"><strong>1</strong></span> (0.0057508s)
                 </p>
               </td>
 </tr>
@@ -3116,22 +3116,22 @@
               </td>
 <td>
                 <p>
- 222.775 (0.730489s)
+ 222.866 (0.703144s)
                 </p>
               </td>
 <td>
                 <p>
- 165.447 (0.734148s)
+ 164.331 (0.705059s)
                 </p>
               </td>
 <td>
                 <p>
- 114.708 (0.732725s)
+ 115.363 (0.70321s)
                 </p>
               </td>
 <td>
                 <p>
- 112.162 (0.730926s)
+ 122.347 (0.703596s)
                 </p>
               </td>
 </tr>
@@ -3143,22 +3143,22 @@
               </td>
 <td>
                 <p>
- 215.962 (0.70815s)
+ 218.681 (0.689941s)
                 </p>
               </td>
 <td>
                 <p>
- 157.945 (0.700858s)
+ 163.796 (0.702765s)
                 </p>
               </td>
 <td>
                 <p>
- 109.582 (0.699985s)
+ 114.57 (0.698376s)
                 </p>
               </td>
 <td>
                 <p>
- 111.909 (0.729275s)
+ 122.422 (0.704027s)
                 </p>
               </td>
 </tr>
@@ -3166,8 +3166,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator_str"></a><p class="title"><b>Table&#160;1.51.&#160;Operator str</b></p>
-<div class="table-contents"><table class="table" summary="Operator str">
+<a name="boost_multiprecision.perf.integer_performance.operator_gcd"></a><p class="title"><b>Table&#160;1.51.&#160;Operator gcd</b></p>
+<div class="table-contents"><table class="table" summary="Operator gcd">
 <colgroup>
 <col>
 <col>
@@ -3211,22 +3211,22 @@
               </td>
 <td>
                 <p>
- 1.46938 (0.00196575s)
+ 1.16358 (2.74442s)
                 </p>
               </td>
 <td>
                 <p>
- 1.37205 (0.00331355s)
+ 1.39847 (8.11559s)
                 </p>
               </td>
 <td>
                 <p>
- 1.5689 (0.00862952s)
+ 1.64677 (22.2518s)
                 </p>
               </td>
 <td>
                 <p>
- 1.57176 (0.0237239s)
+ 1.95096 (64.4961s)
                 </p>
               </td>
 </tr>
@@ -3238,22 +3238,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00133781s)
+ <span class="bold"><strong>1</strong></span> (2.35859s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00241504s)
+ 1.30986 (7.60133s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.00550035s)
+ 1.67681 (22.6577s)
                 </p>
               </td>
 <td>
                 <p>
- 1.20619 (0.0182059s)
+ 2.0895 (69.0758s)
                 </p>
               </td>
 </tr>
@@ -3265,22 +3265,22 @@
               </td>
 <td>
                 <p>
- 1.65482 (0.00221383s)
+ 1.03392 (2.4386s)
                 </p>
               </td>
 <td>
                 <p>
- 1.38972 (0.00335622s)
+ <span class="bold"><strong>1</strong></span> (5.80319s)
                 </p>
               </td>
 <td>
                 <p>
- 1.13845 (0.0062619s)
+ <span class="bold"><strong>1</strong></span> (13.5124s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0150938s)
+ <span class="bold"><strong>1</strong></span> (33.0586s)
                 </p>
               </td>
 </tr>
@@ -3292,22 +3292,22 @@
               </td>
 <td>
                 <p>
- 13.9845 (0.0187087s)
+ 5.25978 (12.4057s)
                 </p>
               </td>
 <td>
                 <p>
- 18.3179 (0.0442384s)
+ 4.4619 (25.8932s)
                 </p>
               </td>
 <td>
                 <p>
- 23.3489 (0.128427s)
+ 4.15577 (56.1542s)
                 </p>
               </td>
 <td>
                 <p>
- 25.3273 (0.382285s)
+ 3.91192 (129.323s)
                 </p>
               </td>
 </tr>
@@ -3315,8 +3315,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator_gcd"></a><p class="title"><b>Table&#160;1.52.&#160;Operator gcd</b></p>
-<div class="table-contents"><table class="table" summary="Operator gcd">
+<a name="boost_multiprecision.perf.integer_performance.operator_powm"></a><p class="title"><b>Table&#160;1.52.&#160;Operator powm</b></p>
+<div class="table-contents"><table class="table" summary="Operator powm">
 <colgroup>
 <col>
 <col>
@@ -3360,22 +3360,22 @@
               </td>
 <td>
                 <p>
- 2.03241 (5.06795s)
+ 2.50722 (2.91621s)
                 </p>
               </td>
 <td>
                 <p>
- 1.89904 (11.3002s)
+ 3.5561 (13.406s)
                 </p>
               </td>
 <td>
                 <p>
- 1.99735 (27.4027s)
+ 4.37066 (73.483s)
                 </p>
               </td>
 <td>
                 <p>
- 2.20708 (73.7574s)
+ 4.88831 (473.91s)
                 </p>
               </td>
 </tr>
@@ -3387,22 +3387,22 @@
               </td>
 <td>
                 <p>
- 1.67874 (4.18605s)
+ 1.93385 (2.24931s)
                 </p>
               </td>
 <td>
                 <p>
- 1.70044 (10.1184s)
+ 3.18107 (11.9922s)
                 </p>
               </td>
 <td>
                 <p>
- 1.96475 (26.9554s)
+ 4.20753 (70.7403s)
                 </p>
               </td>
 <td>
                 <p>
- 2.28347 (76.31s)
+ 4.8158 (466.88s)
                 </p>
               </td>
 </tr>
@@ -3414,22 +3414,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (2.49357s)
+ <span class="bold"><strong>1</strong></span> (1.16313s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (5.95047s)
+ <span class="bold"><strong>1</strong></span> (3.76986s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (13.7195s)
+ <span class="bold"><strong>1</strong></span> (16.8128s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (33.4185s)
+ <span class="bold"><strong>1</strong></span> (96.9476s)
                 </p>
               </td>
 </tr>
@@ -3441,22 +3441,22 @@
               </td>
 <td>
                 <p>
- 5.01832 (12.5135s)
+ 1.44081 (1.67584s)
                 </p>
               </td>
 <td>
                 <p>
- 4.41659 (26.2808s)
+ 1.8794 (7.08507s)
                 </p>
               </td>
 <td>
                 <p>
- 4.08042 (55.9814s)
+ 2.19115 (36.8394s)
                 </p>
               </td>
 <td>
                 <p>
- 3.97901 (132.972s)
+ 2.17186 (210.557s)
                 </p>
               </td>
 </tr>
@@ -3464,8 +3464,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator4"></a><p class="title"><b>Table&#160;1.53.&#160;Operator &amp;</b></p>
-<div class="table-contents"><table class="table" summary="Operator &amp;">
+<a name="boost_multiprecision.perf.integer_performance.operator_str"></a><p class="title"><b>Table&#160;1.53.&#160;Operator str</b></p>
+<div class="table-contents"><table class="table" summary="Operator str">
 <colgroup>
 <col>
 <col>
@@ -3509,22 +3509,22 @@
               </td>
 <td>
                 <p>
- 1.00344 (0.0315529s)
+ 1.17175 (0.00160006s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0426295s)
+ 1.41999 (0.00329476s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0543214s)
+ 1.40856 (0.00813784s)
                 </p>
               </td>
 <td>
                 <p>
- 1.06624 (0.0835064s)
+ 1.52964 (0.0229767s)
                 </p>
               </td>
 </tr>
@@ -3536,22 +3536,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0314446s)
+ <span class="bold"><strong>1</strong></span> (0.00136554s)
                 </p>
               </td>
 <td>
                 <p>
- 1.0808 (0.046074s)
+ <span class="bold"><strong>1</strong></span> (0.00232027s)
                 </p>
               </td>
 <td>
                 <p>
- 1.06116 (0.0576436s)
+ <span class="bold"><strong>1</strong></span> (0.00577741s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0783186s)
+ 1.14754 (0.0172372s)
                 </p>
               </td>
 </tr>
@@ -3563,22 +3563,22 @@
               </td>
 <td>
                 <p>
- 1.78372 (0.0560885s)
+ 1.50501 (0.00205515s)
                 </p>
               </td>
 <td>
                 <p>
- 1.58661 (0.0676363s)
+ 1.52968 (0.00354926s)
                 </p>
               </td>
 <td>
                 <p>
- 1.5738 (0.0854908s)
+ 1.01989 (0.0058923s)
                 </p>
               </td>
 <td>
                 <p>
- 1.83409 (0.143644s)
+ <span class="bold"><strong>1</strong></span> (0.015021s)
                 </p>
               </td>
 </tr>
@@ -3590,22 +3590,22 @@
               </td>
 <td>
                 <p>
- 4.08054 (0.128311s)
+ 12.2161 (0.0166816s)
                 </p>
               </td>
 <td>
                 <p>
- 3.50852 (0.149567s)
+ 16.9577 (0.0393463s)
                 </p>
               </td>
 <td>
                 <p>
- 2.88826 (0.156894s)
+ 18.7474 (0.108311s)
                 </p>
               </td>
 <td>
                 <p>
- 4.45879 (0.349206s)
+ 22.7368 (0.341528s)
                 </p>
               </td>
 </tr>
@@ -3613,8 +3613,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator_int4"></a><p class="title"><b>Table&#160;1.54.&#160;Operator &amp;(int)</b></p>
-<div class="table-contents"><table class="table" summary="Operator &amp;(int)">
+<a name="boost_multiprecision.perf.integer_performance.operator4"></a><p class="title"><b>Table&#160;1.54.&#160;Operator |</b></p>
+<div class="table-contents"><table class="table" summary="Operator |">
 <colgroup>
 <col>
 <col>
@@ -3658,22 +3658,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0367605s)
+ <span class="bold"><strong>1</strong></span> (0.0301617s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0485394s)
+ <span class="bold"><strong>1</strong></span> (0.0423404s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0650023s)
+ <span class="bold"><strong>1</strong></span> (0.0522358s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.099751s)
+ <span class="bold"><strong>1</strong></span> (0.0813156s)
                 </p>
               </td>
 </tr>
@@ -3685,22 +3685,22 @@
               </td>
 <td>
                 <p>
- 1.00324 (0.0368795s)
+ 1.0638 (0.0320861s)
                 </p>
               </td>
 <td>
                 <p>
- 1.06734 (0.0518081s)
+ 1.22566 (0.0518951s)
                 </p>
               </td>
 <td>
                 <p>
- 1.05192 (0.0683771s)
+ 1.28515 (0.0671305s)
                 </p>
               </td>
 <td>
                 <p>
- 1.05296 (0.105034s)
+ 1.16118 (0.094422s)
                 </p>
               </td>
 </tr>
@@ -3712,22 +3712,22 @@
               </td>
 <td>
                 <p>
- 4.00058 (0.147063s)
+ 1.76553 (0.0532514s)
                 </p>
               </td>
 <td>
                 <p>
- 3.02928 (0.147039s)
+ 1.51489 (0.0641408s)
                 </p>
               </td>
 <td>
                 <p>
- 2.22221 (0.144449s)
+ 1.70708 (0.0891706s)
                 </p>
               </td>
 <td>
                 <p>
- 1.45749 (0.145386s)
+ 1.77346 (0.14421s)
                 </p>
               </td>
 </tr>
@@ -3739,22 +3739,22 @@
               </td>
 <td>
                 <p>
- 8.83732 (0.324864s)
+ 4.37637 (0.131999s)
                 </p>
               </td>
 <td>
                 <p>
- 6.95191 (0.337442s)
+ 3.46212 (0.146587s)
                 </p>
               </td>
 <td>
                 <p>
- 5.42556 (0.352674s)
+ 2.91875 (0.152463s)
                 </p>
               </td>
 <td>
                 <p>
- 6.10829 (0.609309s)
+ 4.19621 (0.341217s)
                 </p>
               </td>
 </tr>
@@ -3762,8 +3762,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator5"></a><p class="title"><b>Table&#160;1.55.&#160;Operator |</b></p>
-<div class="table-contents"><table class="table" summary="Operator |">
+<a name="boost_multiprecision.perf.integer_performance.operator_int4"></a><p class="title"><b>Table&#160;1.55.&#160;Operator |(int)</b></p>
+<div class="table-contents"><table class="table" summary="Operator |(int)">
 <colgroup>
 <col>
 <col>
@@ -3807,22 +3807,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0312723s)
+ <span class="bold"><strong>1</strong></span> (0.0289129s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0428385s)
+ <span class="bold"><strong>1</strong></span> (0.0351119s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0528083s)
+ <span class="bold"><strong>1</strong></span> (0.0406779s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0827344s)
+ <span class="bold"><strong>1</strong></span> (0.0525891s)
                 </p>
               </td>
 </tr>
@@ -3834,22 +3834,22 @@
               </td>
 <td>
                 <p>
- 1.0311 (0.0322449s)
+ 1.06091 (0.030674s)
                 </p>
               </td>
 <td>
                 <p>
- 1.20267 (0.0515207s)
+ 1.25979 (0.0442336s)
                 </p>
               </td>
 <td>
                 <p>
- 1.27028 (0.0670814s)
+ 1.36194 (0.0554009s)
                 </p>
               </td>
 <td>
                 <p>
- 1.19432 (0.0988112s)
+ 1.37438 (0.0722772s)
                 </p>
               </td>
 </tr>
@@ -3861,22 +3861,22 @@
               </td>
 <td>
                 <p>
- 1.55273 (0.0485576s)
+ 4.92854 (0.142498s)
                 </p>
               </td>
 <td>
                 <p>
- 1.4656 (0.0627839s)
+ 4.34687 (0.152627s)
                 </p>
               </td>
 <td>
                 <p>
- 1.66721 (0.0880424s)
+ 3.71442 (0.151095s)
                 </p>
               </td>
 <td>
                 <p>
- 1.67004 (0.13817s)
+ 2.981 (0.156768s)
                 </p>
               </td>
 </tr>
@@ -3888,22 +3888,22 @@
               </td>
 <td>
                 <p>
- 4.15311 (0.129877s)
+ 10.9847 (0.317598s)
                 </p>
               </td>
 <td>
                 <p>
- 3.39008 (0.145226s)
+ 9.37065 (0.329021s)
                 </p>
               </td>
 <td>
                 <p>
- 2.88739 (0.152478s)
+ 8.53651 (0.347248s)
                 </p>
               </td>
 <td>
                 <p>
- 4.20575 (0.34796s)
+ 11.2155 (0.589813s)
                 </p>
               </td>
 </tr>
@@ -3911,8 +3911,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator_int5"></a><p class="title"><b>Table&#160;1.56.&#160;Operator |(int)</b></p>
-<div class="table-contents"><table class="table" summary="Operator |(int)">
+<a name="boost_multiprecision.perf.integer_performance.operator5"></a><p class="title"><b>Table&#160;1.56.&#160;Operator ^</b></p>
+<div class="table-contents"><table class="table" summary="Operator ^">
 <colgroup>
 <col>
 <col>
@@ -3956,22 +3956,22 @@
               </td>
 <td>
                 <p>
- 1.01685 (0.030066s)
+ <span class="bold"><strong>1</strong></span> (0.0305149s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0360965s)
+ <span class="bold"><strong>1</strong></span> (0.04217s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0402109s)
+ <span class="bold"><strong>1</strong></span> (0.0525977s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0527074s)
+ <span class="bold"><strong>1</strong></span> (0.0816632s)
                 </p>
               </td>
 </tr>
@@ -3983,22 +3983,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0295677s)
+ 1.01544 (0.0309861s)
                 </p>
               </td>
 <td>
                 <p>
- 1.50234 (0.0542292s)
+ 1.24872 (0.0526585s)
                 </p>
               </td>
 <td>
                 <p>
- 1.52609 (0.0613656s)
+ 1.26661 (0.066621s)
                 </p>
               </td>
 <td>
                 <p>
- 1.37526 (0.0724863s)
+ 1.15965 (0.0947007s)
                 </p>
               </td>
 </tr>
@@ -4010,22 +4010,22 @@
               </td>
 <td>
                 <p>
- 4.84414 (0.14323s)
+ 1.64675 (0.0502505s)
                 </p>
               </td>
 <td>
                 <p>
- 3.99297 (0.144132s)
+ 1.47181 (0.0620663s)
                 </p>
               </td>
 <td>
                 <p>
- 3.85375 (0.154963s)
+ 1.66038 (0.0873322s)
                 </p>
               </td>
 <td>
                 <p>
- 2.91129 (0.153447s)
+ 1.67895 (0.137108s)
                 </p>
               </td>
 </tr>
@@ -4037,22 +4037,22 @@
               </td>
 <td>
                 <p>
- 10.8218 (0.319975s)
+ 4.30668 (0.131418s)
                 </p>
               </td>
 <td>
                 <p>
- 9.05203 (0.326747s)
+ 3.45859 (0.145849s)
                 </p>
               </td>
 <td>
                 <p>
- 8.32597 (0.334795s)
+ 2.91462 (0.153303s)
                 </p>
               </td>
 <td>
                 <p>
- 10.948 (0.577039s)
+ 4.15538 (0.339342s)
                 </p>
               </td>
 </tr>
@@ -4060,8 +4060,8 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator6"></a><p class="title"><b>Table&#160;1.57.&#160;Operator ^</b></p>
-<div class="table-contents"><table class="table" summary="Operator ^">
+<a name="boost_multiprecision.perf.integer_performance.operator_int5"></a><p class="title"><b>Table&#160;1.57.&#160;Operator ^(int)</b></p>
+<div class="table-contents"><table class="table" summary="Operator ^(int)">
 <colgroup>
 <col>
 <col>
@@ -4105,22 +4105,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0311003s)
+ 1.01566 (0.0296088s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0430909s)
+ <span class="bold"><strong>1</strong></span> (0.0356634s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0530915s)
+ <span class="bold"><strong>1</strong></span> (0.0401898s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0842599s)
+ <span class="bold"><strong>1</strong></span> (0.0514097s)
                 </p>
               </td>
 </tr>
@@ -4132,22 +4132,22 @@
               </td>
 <td>
                 <p>
- 1.04721 (0.0325686s)
+ <span class="bold"><strong>1</strong></span> (0.0291524s)
                 </p>
               </td>
 <td>
                 <p>
- 1.18557 (0.0510874s)
+ 1.2393 (0.0441976s)
                 </p>
               </td>
 <td>
                 <p>
- 1.25714 (0.0667433s)
+ 1.38556 (0.0556856s)
                 </p>
               </td>
 <td>
                 <p>
- 1.14462 (0.0964459s)
+ 1.38899 (0.0714075s)
                 </p>
               </td>
 </tr>
@@ -4159,22 +4159,22 @@
               </td>
 <td>
                 <p>
- 1.59277 (0.0495356s)
+ 4.68027 (0.136441s)
                 </p>
               </td>
 <td>
                 <p>
- 1.47967 (0.0637601s)
+ 4.15243 (0.14809s)
                 </p>
               </td>
 <td>
                 <p>
- 1.73243 (0.0919772s)
+ 3.74237 (0.150405s)
                 </p>
               </td>
 <td>
                 <p>
- 1.68499 (0.141977s)
+ 3.0483 (0.156712s)
                 </p>
               </td>
 </tr>
@@ -4186,22 +4186,22 @@
               </td>
 <td>
                 <p>
- 4.17425 (0.12982s)
+ 10.919 (0.318314s)
                 </p>
               </td>
 <td>
                 <p>
- 3.41013 (0.146946s)
+ 9.16311 (0.326788s)
                 </p>
               </td>
 <td>
                 <p>
- 2.8988 (0.153902s)
+ 8.62554 (0.346659s)
                 </p>
               </td>
 <td>
                 <p>
- 4.17074 (0.351426s)
+ 11.6212 (0.597442s)
                 </p>
               </td>
 </tr>
@@ -4209,8 +4209,157 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator_int6"></a><p class="title"><b>Table&#160;1.58.&#160;Operator ^(int)</b></p>
-<div class="table-contents"><table class="table" summary="Operator ^(int)">
+<a name="boost_multiprecision.perf.integer_performance.operator6"></a><p class="title"><b>Table&#160;1.58.&#160;Operator &amp;</b></p>
+<div class="table-contents"><table class="table" summary="Operator &amp;">
+<colgroup>
+<col>
+<col>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Backend
+ </p>
+ </th>
+<th>
+ <p>
+ 128 Bits
+ </p>
+ </th>
+<th>
+ <p>
+ 256 Bits
+ </p>
+ </th>
+<th>
+ <p>
+ 512 Bits
+ </p>
+ </th>
+<th>
+ <p>
+ 1024 Bits
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ cpp_int
+ </p>
+ </td>
+<td>
+ <p>
+ 1.0346 (0.0303431s)
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="bold"><strong>1</strong></span> (0.0427309s)
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="bold"><strong>1</strong></span> (0.0535587s)
+ </p>
+ </td>
+<td>
+ <p>
+ 1.06945 (0.0828084s)
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ cpp_int(fixed)
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="bold"><strong>1</strong></span> (0.0293284s)
+ </p>
+ </td>
+<td>
+ <p>
+ 1.10435 (0.04719s)
+ </p>
+ </td>
+<td>
+ <p>
+ 1.05262 (0.0563769s)
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="bold"><strong>1</strong></span> (0.0774309s)
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ gmp_int
+ </p>
+ </td>
+<td>
+ <p>
+ 1.86057 (0.0545675s)
+ </p>
+ </td>
+<td>
+ <p>
+ 1.58432 (0.0676995s)
+ </p>
+ </td>
+<td>
+ <p>
+ 1.69164 (0.0906018s)
+ </p>
+ </td>
+<td>
+ <p>
+ 1.86625 (0.144505s)
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ tommath_int
+ </p>
+ </td>
+<td>
+ <p>
+ 4.4157 (0.129506s)
+ </p>
+ </td>
+<td>
+ <p>
+ 3.60396 (0.154s)
+ </p>
+ </td>
+<td>
+ <p>
+ 2.95985 (0.158525s)
+ </p>
+ </td>
+<td>
+ <p>
+ 4.4032 (0.340944s)
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<br class="table-break"><div class="table">
+<a name="boost_multiprecision.perf.integer_performance.operator_int6"></a><p class="title"><b>Table&#160;1.59.&#160;Operator &amp;(int)</b></p>
+<div class="table-contents"><table class="table" summary="Operator &amp;(int)">
 <colgroup>
 <col>
 <col>
@@ -4254,22 +4403,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0290428s)
+ 1.05874 (0.038946s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0360261s)
+ <span class="bold"><strong>1</strong></span> (0.0483903s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0409722s)
+ <span class="bold"><strong>1</strong></span> (0.063842s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0541785s)
+ <span class="bold"><strong>1</strong></span> (0.100361s)
                 </p>
               </td>
 </tr>
@@ -4281,22 +4430,22 @@
               </td>
 <td>
                 <p>
- 1.01484 (0.0294736s)
+ <span class="bold"><strong>1</strong></span> (0.0367853s)
                 </p>
               </td>
 <td>
                 <p>
- 1.4898 (0.0536716s)
+ 1.05827 (0.0512099s)
                 </p>
               </td>
 <td>
                 <p>
- 1.34782 (0.0552234s)
+ 1.09114 (0.0696605s)
                 </p>
               </td>
 <td>
                 <p>
- 1.35054 (0.0731703s)
+ 1.09432 (0.109826s)
                 </p>
               </td>
 </tr>
@@ -4308,22 +4457,22 @@
               </td>
 <td>
                 <p>
- 4.94574 (0.143638s)
+ 3.92298 (0.144308s)
                 </p>
               </td>
 <td>
                 <p>
- 4.05569 (0.146111s)
+ 2.99447 (0.144903s)
                 </p>
               </td>
 <td>
                 <p>
- 3.65257 (0.149654s)
+ 2.228 (0.14224s)
                 </p>
               </td>
 <td>
                 <p>
- 2.89039 (0.156597s)
+ 1.42296 (0.142809s)
                 </p>
               </td>
 </tr>
@@ -4335,22 +4484,22 @@
               </td>
 <td>
                 <p>
- 10.8939 (0.316389s)
+ 8.79208 (0.323419s)
                 </p>
               </td>
 <td>
                 <p>
- 9.21322 (0.331916s)
+ 7.02288 (0.339839s)
                 </p>
               </td>
 <td>
                 <p>
- 8.17995 (0.335151s)
+ 5.65271 (0.36088s)
                 </p>
               </td>
 <td>
                 <p>
- 10.6902 (0.579178s)
+ 6.27104 (0.629365s)
                 </p>
               </td>
 </tr>
@@ -4358,7 +4507,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator___"></a><p class="title"><b>Table&#160;1.59.&#160;Operator &lt;&lt;</b></p>
+<a name="boost_multiprecision.perf.integer_performance.operator___"></a><p class="title"><b>Table&#160;1.60.&#160;Operator &lt;&lt;</b></p>
 <div class="table-contents"><table class="table" summary="Operator &lt;&lt;">
 <colgroup>
 <col>
@@ -4403,22 +4552,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0253777s)
+ <span class="bold"><strong>1</strong></span> (0.0248801s)
                 </p>
               </td>
 <td>
                 <p>
- 1.04239 (0.034484s)
+ 1.23196 (0.04s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0420979s)
+ <span class="bold"><strong>1</strong></span> (0.0424149s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0623485s)
+ <span class="bold"><strong>1</strong></span> (0.060157s)
                 </p>
               </td>
 </tr>
@@ -4430,22 +4579,22 @@
               </td>
 <td>
                 <p>
- 1.05039 (0.0266563s)
+ 1.08931 (0.027102s)
                 </p>
               </td>
 <td>
                 <p>
- 1.40679 (0.0465388s)
+ 1.40572 (0.0456418s)
                 </p>
               </td>
 <td>
                 <p>
- 1.34077 (0.0564434s)
+ 1.3475 (0.0571542s)
                 </p>
               </td>
 <td>
                 <p>
- 1.20319 (0.0750171s)
+ 1.24573 (0.0749397s)
                 </p>
               </td>
 </tr>
@@ -4457,22 +4606,22 @@
               </td>
 <td>
                 <p>
- 1.0359 (0.0262888s)
+ 1.05561 (0.0262636s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0330815s)
+ <span class="bold"><strong>1</strong></span> (0.0324686s)
                 </p>
               </td>
 <td>
                 <p>
- 1.1625 (0.0489388s)
+ 1.09914 (0.0466199s)
                 </p>
               </td>
 <td>
                 <p>
- 1.16511 (0.0726428s)
+ 1.16315 (0.0699719s)
                 </p>
               </td>
 </tr>
@@ -4484,22 +4633,22 @@
               </td>
 <td>
                 <p>
- 1.65904 (0.0421025s)
+ 1.60497 (0.0399319s)
                 </p>
               </td>
 <td>
                 <p>
- 2.11201 (0.0698686s)
+ 2.13048 (0.0691737s)
                 </p>
               </td>
 <td>
                 <p>
- 2.36727 (0.0996572s)
+ 2.31219 (0.0980712s)
                 </p>
               </td>
 <td>
                 <p>
- 2.701 (0.168403s)
+ 2.74695 (0.165248s)
                 </p>
               </td>
 </tr>
@@ -4507,7 +4656,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.integer_performance.operator7"></a><p class="title"><b>Table&#160;1.60.&#160;Operator &gt;&gt;</b></p>
+<a name="boost_multiprecision.perf.integer_performance.operator7"></a><p class="title"><b>Table&#160;1.61.&#160;Operator &gt;&gt;</b></p>
 <div class="table-contents"><table class="table" summary="Operator &gt;&gt;">
 <colgroup>
 <col>
@@ -4552,22 +4701,22 @@
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0221035s)
+ <span class="bold"><strong>1</strong></span> (0.0213349s)
                 </p>
               </td>
 <td>
                 <p>
- 1.0337 (0.0313761s)
+ 1.02127 (0.0295019s)
                 </p>
               </td>
 <td>
                 <p>
- 1.03419 (0.0355718s)
+ <span class="bold"><strong>1</strong></span> (0.0327116s)
                 </p>
               </td>
 <td>
                 <p>
- 1.20366 (0.0453508s)
+ 1.13168 (0.0433804s)
                 </p>
               </td>
 </tr>
@@ -4579,22 +4728,22 @@
               </td>
 <td>
                 <p>
- 1.1036 (0.0243933s)
+ 1.13514 (0.0242181s)
                 </p>
               </td>
 <td>
                 <p>
- 1.12323 (0.0340936s)
+ 1.16938 (0.0337803s)
                 </p>
               </td>
 <td>
                 <p>
- 1.40181 (0.0482162s)
+ 1.46999 (0.0480859s)
                 </p>
               </td>
 <td>
                 <p>
- 1.69985 (0.0640463s)
+ 1.60077 (0.061362s)
                 </p>
               </td>
 </tr>
@@ -4606,22 +4755,22 @@
               </td>
 <td>
                 <p>
- 1.30456 (0.0288354s)
+ 1.26614 (0.0270129s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0303532s)
+ <span class="bold"><strong>1</strong></span> (0.0288873s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0343958s)
+ 1.42219 (0.0465221s)
                 </p>
               </td>
 <td>
                 <p>
- <span class="bold"><strong>1</strong></span> (0.0376776s)
+ <span class="bold"><strong>1</strong></span> (0.0383329s)
                 </p>
               </td>
 </tr>
@@ -4633,22 +4782,22 @@
               </td>
 <td>
                 <p>
- 10.5766 (0.233779s)
+ 12.0066 (0.25616s)
                 </p>
               </td>
 <td>
                 <p>
- 9.0959 (0.27609s)
+ 10.2837 (0.297067s)
                 </p>
               </td>
 <td>
                 <p>
- 8.6249 (0.29666s)
+ 9.99696 (0.327017s)
                 </p>
               </td>
 <td>
                 <p>
- 13.6818 (0.515498s)
+ 16.0943 (0.616942s)
                 </p>
               </td>
 </tr>

Modified: trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/rational_performance.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/rational_performance.html (original)
+++ trunk/libs/multiprecision/doc/html/boost_multiprecision/perf/rational_performance.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -37,7 +37,7 @@
         for 500000 operations.
       </p>
 <div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator__"></a><p class="title"><b>Table&#160;1.61.&#160;Operator +</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator__"></a><p class="title"><b>Table&#160;1.62.&#160;Operator +</b></p>
 <div class="table-contents"><table class="table" summary="Operator +">
 <colgroup>
 <col>
@@ -132,7 +132,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator___int_"></a><p class="title"><b>Table&#160;1.62.&#160;Operator +(int)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator___int_"></a><p class="title"><b>Table&#160;1.63.&#160;Operator +(int)</b></p>
 <div class="table-contents"><table class="table" summary="Operator +(int)">
 <colgroup>
 <col>
@@ -227,7 +227,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator___unsigned_long_long_"></a><p class="title"><b>Table&#160;1.63.&#160;Operator +(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator___unsigned_long_long_"></a><p class="title"><b>Table&#160;1.64.&#160;Operator +(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator +(unsigned long long)">
 <colgroup>
 <col>
@@ -322,7 +322,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator____unsigned_long_long_"></a><p class="title"><b>Table&#160;1.64.&#160;Operator +=(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator____unsigned_long_long_"></a><p class="title"><b>Table&#160;1.65.&#160;Operator +=(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator +=(unsigned long long)">
 <colgroup>
 <col>
@@ -417,7 +417,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator0"></a><p class="title"><b>Table&#160;1.65.&#160;Operator -</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator0"></a><p class="title"><b>Table&#160;1.66.&#160;Operator -</b></p>
 <div class="table-contents"><table class="table" summary="Operator -">
 <colgroup>
 <col>
@@ -512,7 +512,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_int0"></a><p class="title"><b>Table&#160;1.66.&#160;Operator -(int)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_int0"></a><p class="title"><b>Table&#160;1.67.&#160;Operator -(int)</b></p>
 <div class="table-contents"><table class="table" summary="Operator -(int)">
 <colgroup>
 <col>
@@ -607,7 +607,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long0"></a><p class="title"><b>Table&#160;1.67.&#160;Operator -(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long0"></a><p class="title"><b>Table&#160;1.68.&#160;Operator -(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator -(unsigned long long)">
 <colgroup>
 <col>
@@ -702,7 +702,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long1"></a><p class="title"><b>Table&#160;1.68.&#160;Operator -=(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long1"></a><p class="title"><b>Table&#160;1.69.&#160;Operator -=(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator -=(unsigned long long)">
 <colgroup>
 <col>
@@ -797,7 +797,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator1"></a><p class="title"><b>Table&#160;1.69.&#160;Operator *</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator1"></a><p class="title"><b>Table&#160;1.70.&#160;Operator *</b></p>
 <div class="table-contents"><table class="table" summary="Operator *">
 <colgroup>
 <col>
@@ -892,7 +892,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_int1"></a><p class="title"><b>Table&#160;1.70.&#160;Operator *(int)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_int1"></a><p class="title"><b>Table&#160;1.71.&#160;Operator *(int)</b></p>
 <div class="table-contents"><table class="table" summary="Operator *(int)">
 <colgroup>
 <col>
@@ -987,7 +987,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long2"></a><p class="title"><b>Table&#160;1.71.&#160;Operator *(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long2"></a><p class="title"><b>Table&#160;1.72.&#160;Operator *(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator *(unsigned long long)">
 <colgroup>
 <col>
@@ -1082,7 +1082,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long3"></a><p class="title"><b>Table&#160;1.72.&#160;Operator *=(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long3"></a><p class="title"><b>Table&#160;1.73.&#160;Operator *=(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator *=(unsigned long long)">
 <colgroup>
 <col>
@@ -1177,7 +1177,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator2"></a><p class="title"><b>Table&#160;1.73.&#160;Operator /</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator2"></a><p class="title"><b>Table&#160;1.74.&#160;Operator /</b></p>
 <div class="table-contents"><table class="table" summary="Operator /">
 <colgroup>
 <col>
@@ -1272,7 +1272,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_int2"></a><p class="title"><b>Table&#160;1.74.&#160;Operator /(int)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_int2"></a><p class="title"><b>Table&#160;1.75.&#160;Operator /(int)</b></p>
 <div class="table-contents"><table class="table" summary="Operator /(int)">
 <colgroup>
 <col>
@@ -1367,7 +1367,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long4"></a><p class="title"><b>Table&#160;1.75.&#160;Operator /(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long4"></a><p class="title"><b>Table&#160;1.76.&#160;Operator /(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator /(unsigned long long)">
 <colgroup>
 <col>
@@ -1462,7 +1462,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long5"></a><p class="title"><b>Table&#160;1.76.&#160;Operator /=(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_unsigned_long_long5"></a><p class="title"><b>Table&#160;1.77.&#160;Operator /=(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator /=(unsigned long long)">
 <colgroup>
 <col>
@@ -1557,7 +1557,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_construct"></a><p class="title"><b>Table&#160;1.77.&#160;Operator construct</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_construct"></a><p class="title"><b>Table&#160;1.78.&#160;Operator construct</b></p>
 <div class="table-contents"><table class="table" summary="Operator construct">
 <colgroup>
 <col>
@@ -1652,7 +1652,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_construct_unsigned_"></a><p class="title"><b>Table&#160;1.78.&#160;Operator construct(unsigned)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_construct_unsigned_"></a><p class="title"><b>Table&#160;1.79.&#160;Operator construct(unsigned)</b></p>
 <div class="table-contents"><table class="table" summary="Operator construct(unsigned)">
 <colgroup>
 <col>
@@ -1747,7 +1747,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_construct_unsigned_long_long_"></a><p class="title"><b>Table&#160;1.79.&#160;Operator construct(unsigned long long)</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_construct_unsigned_long_long_"></a><p class="title"><b>Table&#160;1.80.&#160;Operator construct(unsigned long long)</b></p>
 <div class="table-contents"><table class="table" summary="Operator construct(unsigned long long)">
 <colgroup>
 <col>
@@ -1842,7 +1842,7 @@
 </table></div>
 </div>
 <br class="table-break"><div class="table">
-<a name="boost_multiprecision.perf.rational_performance.operator_str"></a><p class="title"><b>Table&#160;1.80.&#160;Operator str</b></p>
+<a name="boost_multiprecision.perf.rational_performance.operator_str"></a><p class="title"><b>Table&#160;1.81.&#160;Operator str</b></p>
 <div class="table-contents"><table class="table" summary="Operator str">
 <colgroup>
 <col>

Modified: trunk/libs/multiprecision/doc/html/index.html
==============================================================================
--- trunk/libs/multiprecision/doc/html/index.html (original)
+++ trunk/libs/multiprecision/doc/html/index.html 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -136,7 +136,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: December 06, 2012 at 11:21:55 GMT</small></p></td>
+<td align="left"><p><small>Last revised: December 14, 2012 at 18:29:25 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: trunk/libs/multiprecision/doc/multiprecision.qbk
==============================================================================
--- trunk/libs/multiprecision/doc/multiprecision.qbk (original)
+++ trunk/libs/multiprecision/doc/multiprecision.qbk 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -2976,220 +2976,227 @@
 
 [table Operator +
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.22306 (0.0279933s)][1.15878 (0.038341s)][1.24006 (0.0562258s)][1.32055 (0.0925091s)]]
-[[cpp_int(fixed)][1.56093 (0.0357264s)][1.71757 (0.05683s)][1.66497 (0.0754916s)][1.70376 (0.119354s)]]
-[[gmp_int][1.98788 (0.0454986s)][1.37882 (0.0456216s)][1.14898 (0.0520959s)][[*1] (0.0700532s)]]
-[[tommath_int][[*1] (0.022888s)][[*1] (0.0330875s)][[*1] (0.0453411s)][1.07021 (0.074972s)]]
+[[cpp_int][1.23704 (0.0274266s)][1.09358 (0.0383278s)][1.26645 (0.0558828s)][1.32188 (0.0916899s)]]
+[[cpp_int(fixed)][1.62044 (0.0359271s)][1.5277 (0.053543s)][1.73059 (0.076363s)][1.71537 (0.118983s)]]
+[[gmp_int][1.87515 (0.0415741s)][1.21699 (0.042653s)][1.15599 (0.0510088s)][[*1] (0.0693631s)]]
+[[tommath_int][[*1] (0.0221711s)][[*1] (0.035048s)][[*1] (0.0441255s)][1.04441 (0.0724435s)]]
 ]
 [table Operator +(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0162581s)][[*1] (0.0196602s)][[*1] (0.0305476s)][[*1] (0.0421105s)]]
-[[cpp_int(fixed)][1.3852 (0.0225207s)][1.84835 (0.036339s)][1.6111 (0.0492153s)][1.63014 (0.068646s)]]
-[[gmp_int][1.95525 (0.0317886s)][2.2217 (0.0436791s)][2.21508 (0.0676653s)][2.58759 (0.108965s)]]
-[[tommath_int][13.603 (0.221158s)][11.5797 (0.227659s)][7.86674 (0.24031s)][6.36923 (0.268212s)]]
+[[cpp_int][[*1] (0.0155377s)][[*1] (0.0209523s)][[*1] (0.0306377s)][[*1] (0.043125s)]]
+[[cpp_int(fixed)][1.31904 (0.0204948s)][1.76211 (0.0369203s)][1.52941 (0.0468577s)][1.60412 (0.0691778s)]]
+[[gmp_int][1.96204 (0.0304855s)][2.02569 (0.0424428s)][2.11505 (0.0648002s)][2.65993 (0.114709s)]]
+[[tommath_int][14.0654 (0.218543s)][10.8239 (0.226786s)][7.76691 (0.23796s)][6.10039 (0.263079s)]]
 ]
 [table Operator +(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0269712s)][[*1] (0.0296213s)][[*1] (0.0380242s)][[*1] (0.045841s)]]
-[[cpp_int(fixed)][1.38342 (0.0373126s)][1.51165 (0.0447769s)][1.54533 (0.05876s)][1.3971 (0.0640443s)]]
-[[gmp_int][26.7163 (0.72057s)][24.0631 (0.712781s)][19.6009 (0.745307s)][17.6547 (0.809308s)]]
-[[tommath_int][19.7493 (0.532664s)][18.2944 (0.541905s)][14.9127 (0.567043s)][12.9059 (0.591619s)]]
+[[cpp_int][[*1] (0.026624s)][[*1] (0.0291407s)][[*1] (0.0373209s)][[*1] (0.0464919s)]]
+[[cpp_int(fixed)][1.31378 (0.034978s)][1.54897 (0.045138s)][1.53649 (0.0573431s)][1.27833 (0.0594319s)]]
+[[gmp_int][25.5775 (0.680974s)][24.0117 (0.699717s)][19.5633 (0.730121s)][16.8939 (0.785432s)]]
+[[tommath_int][19.4694 (0.518354s)][18.4246 (0.536907s)][14.7715 (0.551288s)][12.3637 (0.574812s)]]
 ]
 [table Operator +=(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.16166 (0.020334s)][1.15312 (0.0204789s)][1.21086 (0.0216179s)][1.28088 (0.0229569s)]]
-[[cpp_int(fixed)][[*1] (0.0175043s)][[*1] (0.0177595s)][[*1] (0.0178534s)][[*1] (0.0179228s)]]
-[[gmp_int][39.0852 (0.684159s)][38.7246 (0.68773s)][38.2555 (0.68299s)][37.6736 (0.675217s)]]
-[[tommath_int][30.5872 (0.535408s)][29.371 (0.521614s)][30.3387 (0.541648s)][31.8346 (0.570565s)]]
+[[cpp_int][1.18405 (0.0196905s)][1.22304 (0.0206476s)][1.25861 (0.0217397s)][1.29525 (0.0220829s)]]
+[[cpp_int(fixed)][[*1] (0.0166298s)][[*1] (0.0168822s)][[*1] (0.0172728s)][[*1] (0.0170492s)]]
+[[gmp_int][39.9082 (0.663668s)][39.4584 (0.666147s)][38.5504 (0.665873s)][39.2231 (0.668722s)]]
+[[tommath_int][30.6219 (0.509238s)][30.4135 (0.513447s)][30.9077 (0.533863s)][32.3086 (0.550835s)]]
 ]
 [table Operator -
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.12975 (0.0308979s)][[*1] (0.0392305s)][1.05392 (0.0543957s)][1.18166 (0.0860767s)]]
-[[cpp_int(fixed)][1.36853 (0.0374283s)][1.45987 (0.0572717s)][1.44606 (0.0746349s)][1.55935 (0.11359s)]]
-[[gmp_int][1.53173 (0.0418917s)][1.17956 (0.0462749s)][1.13609 (0.0586365s)][[*1] (0.0728442s)]]
-[[tommath_int][[*1] (0.0273493s)][1.07293 (0.0420917s)][[*1] (0.0516126s)][1.0985 (0.0800191s)]]
+[[cpp_int][1.06986 (0.0296064s)][[*1] (0.0381508s)][1.05932 (0.053186s)][1.1766 (0.0844721s)]]
+[[cpp_int(fixed)][1.3304 (0.0368163s)][1.44506 (0.0551303s)][1.4431 (0.0724545s)][1.57255 (0.112898s)]]
+[[gmp_int][1.48072 (0.0409761s)][1.19003 (0.0454007s)][1.0794 (0.0541942s)][[*1] (0.0717934s)]]
+[[tommath_int][[*1] (0.0276731s)][1.10891 (0.0423057s)][[*1] (0.0502076s)][1.08479 (0.0778811s)]]
 ]
 [table Operator -(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0146171s)][[*1] (0.0172176s)][[*1] (0.023655s)][[*1] (0.0313105s)]]
-[[cpp_int(fixed)][1.49086 (0.021792s)][1.94917 (0.03356s)][1.89657 (0.0448632s)][1.82658 (0.057191s)]]
-[[gmp_int][2.16301 (0.0316169s)][2.55059 (0.0439151s)][2.67983 (0.0633913s)][3.27949 (0.102682s)]]
-[[tommath_int][14.0691 (0.20565s)][12.527 (0.215684s)][9.43355 (0.22315s)][7.64671 (0.239422s)]]
+[[cpp_int][[*1] (0.0147372s)][[*1] (0.0170001s)][[*1] (0.0232882s)][[*1] (0.0310734s)]]
+[[cpp_int(fixed)][1.4267 (0.0210256s)][1.98887 (0.0338109s)][1.83788 (0.0428009s)][1.81269 (0.0563264s)]]
+[[gmp_int][2.07504 (0.0305803s)][2.40928 (0.0409579s)][2.58711 (0.0602493s)][3.26438 (0.101435s)]]
+[[tommath_int][13.5424 (0.199577s)][12.1793 (0.207048s)][9.28855 (0.216314s)][7.49327 (0.232842s)]]
 ]
 [table Operator -(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0265242s)][[*1] (0.0295275s)][[*1] (0.0377737s)][[*1] (0.0450106s)]]
-[[cpp_int(fixed)][1.2627 (0.033492s)][1.47472 (0.0435449s)][1.47468 (0.055704s)][1.40667 (0.0633151s)]]
-[[gmp_int][26.0595 (0.691208s)][23.3957 (0.690817s)][18.9344 (0.715223s)][16.9593 (0.763349s)]]
-[[tommath_int][19.26 (0.510855s)][17.6236 (0.52038s)][13.9134 (0.52556s)][12.2359 (0.550746s)]]
+[[cpp_int][[*1] (0.0277377s)][[*1] (0.0296807s)][[*1] (0.0372392s)][[*1] (0.0455855s)]]
+[[cpp_int(fixed)][1.19867 (0.0332484s)][1.48639 (0.0441169s)][1.43253 (0.0533464s)][1.27697 (0.0582111s)]]
+[[gmp_int][24.1794 (0.670683s)][22.9073 (0.679904s)][18.8758 (0.702922s)][16.5837 (0.755975s)]]
+[[tommath_int][18.149 (0.503413s)][17.4116 (0.516787s)][14.0411 (0.52288s)][11.8237 (0.538987s)]]
 ]
 [table Operator -=(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.28589 (0.0210146s)][1.3505 (0.0222463s)][1.34427 (0.0237863s)][1.22787 (0.0230902s)]]
-[[cpp_int(fixed)][[*1] (0.0163425s)][[*1] (0.0164727s)][[*1] (0.0176946s)][[*1] (0.0188051s)]]
-[[gmp_int][41.0201 (0.670371s)][41.4726 (0.683165s)][37.9503 (0.671514s)][35.6021 (0.669502s)]]
-[[tommath_int][32.6952 (0.534322s)][31.4882 (0.518695s)][29.3988 (0.5202s)][29.1175 (0.547558s)]]
+[[cpp_int][1.26896 (0.0203467s)][1.25722 (0.0206147s)][1.36108 (0.0225485s)][1.18351 (0.0226161s)]]
+[[cpp_int(fixed)][[*1] (0.0160342s)][[*1] (0.0163971s)][[*1] (0.0165667s)][[*1] (0.0191094s)]]
+[[gmp_int][41.1339 (0.659547s)][40.3982 (0.662411s)][39.925 (0.661425s)][34.636 (0.661874s)]]
+[[tommath_int][31.1543 (0.499533s)][31.0303 (0.508806s)][30.7699 (0.509756s)][27.7054 (0.529434s)]]
 ]
 [table Operator *
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.13172 (0.0766099s)][1.59509 (0.20993s)][1.40998 (0.70643s)][1.70758 (2.66895s)]]
-[[cpp_int(fixed)][[*1] (0.067693s)][1.27132 (0.167319s)][[*1] (0.50102s)][[*1] (1.563s)]]
-[[gmp_int][1.01718 (0.0688559s)][[*1] (0.13161s)][1.13221 (0.567258s)][1.02292 (1.59883s)]]
-[[tommath_int][1.6793 (0.113677s)][2.66959 (0.351345s)][2.01091 (1.00751s)][2.05812 (3.21684s)]]
+[[cpp_int][1.11839 (0.0757577s)][1.61061 (0.207951s)][1.4501 (0.696912s)][1.72796 (2.64108s)]]
+[[cpp_int(fixed)][1.01115 (0.0684934s)][1.28687 (0.166152s)][[*1] (0.480595s)][[*1] (1.52844s)]]
+[[gmp_int][[*1] (0.0677384s)][[*1] (0.129113s)][1.09011 (0.523902s)][1.03374 (1.58s)]]
+[[tommath_int][1.6322 (0.110562s)][2.71751 (0.350866s)][2.05222 (0.986288s)][2.0644 (3.15531s)]]
 ]
 [table Operator *(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0228822s)][1.19988 (0.0332404s)][1.13882 (0.0416226s)][1.2711 (0.0665655s)]]
-[[cpp_int(fixed)][1.33157 (0.0304692s)][1.6546 (0.0458376s)][1.72684 (0.063114s)][1.83178 (0.0959269s)]]
-[[gmp_int][1.00858 (0.0230786s)][[*1] (0.0277032s)][[*1] (0.0365488s)][[*1] (0.0523682s)]]
-[[tommath_int][10.8491 (0.248252s)][9.88511 (0.273849s)][8.95509 (0.327298s)][8.04172 (0.421131s)]]
+[[cpp_int][1.01611 (0.0229536s)][1.12175 (0.0298152s)][1.16413 (0.0416439s)][1.31747 (0.0666043s)]]
+[[cpp_int(fixed)][1.30215 (0.0294152s)][1.669 (0.0443606s)][1.72395 (0.0616701s)][1.88315 (0.095202s)]]
+[[gmp_int][[*1] (0.0225897s)][[*1] (0.0265791s)][[*1] (0.0357725s)][[*1] (0.0505547s)]]
+[[tommath_int][10.8281 (0.244603s)][10.1516 (0.26982s)][8.76424 (0.313519s)][8.04364 (0.406644s)]]
 ]
 [table Operator *(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0574926s)][[*1] (0.0876613s)][[*1] (0.146194s)][[*1] (0.258556s)]]
-[[cpp_int(fixed)][1.12247 (0.0645337s)][1.24471 (0.109113s)][1.19748 (0.175065s)][1.17442 (0.303653s)]]
-[[gmp_int][12.271 (0.705488s)][8.23054 (0.7215s)][5.28668 (0.772883s)][3.09816 (0.801047s)]]
-[[tommath_int][10.2751 (0.590743s)][7.36707 (0.645807s)][4.88979 (0.71486s)][3.43724 (0.888719s)]]
+[[cpp_int][[*1] (0.0570721s)][[*1] (0.0856141s)][[*1] (0.143279s)][[*1] (0.252785s)]]
+[[cpp_int(fixed)][1.10857 (0.0632686s)][1.2951 (0.110878s)][1.20827 (0.173121s)][1.18463 (0.299456s)]]
+[[gmp_int][12.0605 (0.68832s)][8.13434 (0.696415s)][5.21762 (0.747577s)][3.11601 (0.787681s)]]
+[[tommath_int][10.0524 (0.57371s)][7.33116 (0.627651s)][4.85202 (0.695193s)][3.35808 (0.848871s)]]
 ]
 [table Operator *=(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][114.922 (7.57662s)][70.5882 (7.61458s)][44.3157 (7.67791s)][26.2881 (7.81595s)]]
-[[cpp_int(fixed)][[*1] (0.0659286s)][[*1] (0.107873s)][[*1] (0.173255s)][[*1] (0.297319s)]]
-[[gmp_int][47.9828 (3.16344s)][29.4972 (3.18196s)][18.1719 (3.14838s)][10.6941 (3.17956s)]]
-[[tommath_int][284.199 (18.7368s)][173.129 (18.676s)][109.052 (18.8938s)][64.5866 (19.2028s)]]
+[[cpp_int][111.27 (7.43118s)][67.7078 (7.34138s)][43.3851 (7.4075s)][25.3089 (7.55455s)]]
+[[cpp_int(fixed)][[*1] (0.0667848s)][[*1] (0.108427s)][[*1] (0.170738s)][[*1] (0.298493s)]]
+[[gmp_int][46.3718 (3.09693s)][28.4639 (3.08626s)][18.1719 (3.10264s)][10.5223 (3.14083s)]]
+[[tommath_int][276.674 (18.4776s)][169.146 (18.34s)][108.491 (18.5236s)][63.3261 (18.9024s)]]
 ]
 [table Operator /
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][2.71618 (0.616086s)][2.09988 (0.737246s)][1.65898 (0.94343s)][1.49441 (1.44418s)]]
-[[cpp_int(fixed)][[*1] (0.226821s)][[*1] (0.35109s)][[*1] (0.56868s)][[*1] (0.966385s)]]
-[[gmp_int][3.82134 (0.866761s)][2.75998 (0.969001s)][1.93226 (1.09884s)][1.34132 (1.29623s)]]
-[[tommath_int][13.2978 (3.01622s)][11.3314 (3.97833s)][9.94138 (5.65347s)][13.3423 (12.8938s)]]
+[[cpp_int][2.68035 (0.595251s)][2.04702 (0.707471s)][1.62314 (0.921536s)][1.43112 (1.38811s)]]
+[[cpp_int(fixed)][[*1] (0.222079s)][[*1] (0.34561s)][[*1] (0.567748s)][[*1] (0.969945s)]]
+[[gmp_int][3.79283 (0.842308s)][2.73668 (0.945824s)][1.86649 (1.05969s)][1.32141 (1.2817s)]]
+[[tommath_int][13.2531 (2.94324s)][11.2054 (3.87271s)][9.83293 (5.58262s)][13.0164 (12.6252s)]]
 ]
 [table Operator /(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][4.15094 (0.23911s)][3.57962 (0.356615s)][3.11624 (0.578256s)][2.82967 (1.00414s)]]
-[[cpp_int(fixed)][2.42806 (0.139865s)][2.54164 (0.253208s)][2.43025 (0.450962s)][2.37209 (0.841768s)]]
-[[gmp_int][[*1] (0.0576038s)][[*1] (0.0996238s)][[*1] (0.185562s)][[*1] (0.354863s)]]
-[[tommath_int][36.3133 (2.09179s)][28.2731 (2.81668s)][21.8589 (4.05618s)][25.8061 (9.15762s)]]
+[[cpp_int][4.06026 (0.225473s)][3.45732 (0.340049s)][3.00195 (0.547957s)][2.80587 (0.978029s)]]
+[[cpp_int(fixed)][2.43766 (0.135367s)][2.56264 (0.252052s)][2.44011 (0.445402s)][2.38009 (0.829617s)]]
+[[gmp_int][[*1] (0.0555316s)][[*1] (0.0983563s)][[*1] (0.182534s)][[*1] (0.348566s)]]
+[[tommath_int][35.9988 (1.99907s)][27.1024 (2.66569s)][21.8333 (3.98531s)][25.8066 (8.99528s)]]
 ]
 [table Operator /(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.53953 (0.716927s)][1.40156 (1.65075s)][2.59584 (3.57744s)][4.58524 (8.3789s)]]
-[[cpp_int(fixed)][[*1] (0.465679s)][1.09556 (1.29034s)][2.2858 (3.15016s)][4.40115 (8.0425s)]]
-[[gmp_int][2.25405 (1.04967s)][[*1] (1.17779s)][[*1] (1.37814s)][[*1] (1.82736s)]]
-[[tommath_int][5.03884 (2.34648s)][2.63459 (3.103s)][3.67287 (5.06174s)][6.77479 (12.38s)]]
+[[cpp_int][1.50505 (0.705756s)][1.39347 (1.58556s)][2.63348 (3.57438s)][4.75451 (8.52733s)]]
+[[cpp_int(fixed)][[*1] (0.468925s)][1.12378 (1.27869s)][2.29966 (3.12128s)][4.4844 (8.04288s)]]
+[[gmp_int][2.17234 (1.01866s)][[*1] (1.13785s)][[*1] (1.35728s)][[*1] (1.79352s)]]
+[[tommath_int][4.74612 (2.22557s)][2.70088 (3.07319s)][3.65634 (4.96268s)][6.79408 (12.1853s)]]
 ]
 [table Operator /=(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.78744 (0.0586752s)][1.74065 (0.0616578s)][1.66814 (0.0740436s)][1.36231 (0.126362s)]]
-[[cpp_int(fixed)][[*1] (0.0328264s)][[*1] (0.0354222s)][[*1] (0.0443871s)][[*1] (0.0927553s)]]
-[[gmp_int][21.2392 (0.697207s)][19.3517 (0.68548s)][15.2936 (0.678837s)][7.37138 (0.683734s)]]
-[[tommath_int][32.8142 (1.07717s)][30.5556 (1.08235s)][24.7236 (1.09741s)][12.4072 (1.15084s)]]
+[[cpp_int][1.76281 (0.0574966s)][1.76471 (0.0604224s)][1.56085 (0.0716403s)][1.31422 (0.124043s)]]
+[[cpp_int(fixed)][[*1] (0.0326164s)][[*1] (0.0342393s)][[*1] (0.0458981s)][[*1] (0.0943852s)]]
+[[gmp_int][20.2862 (0.661664s)][19.4043 (0.664389s)][14.4881 (0.664976s)][7.14238 (0.674135s)]]
+[[tommath_int][32.9555 (1.07489s)][30.1525 (1.0324s)][22.8324 (1.04796s)][11.7456 (1.10861s)]]
 ]
 [table Operator %
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.86833 (0.37472s)][1.43076 (0.491332s)][1.30757 (0.708055s)][1.2528 (1.15842s)]]
-[[cpp_int(fixed)][[*1] (0.200565s)][[*1] (0.343407s)][[*1] (0.541503s)][[*1] (0.924662s)]]
-[[gmp_int][3.22603 (0.647027s)][2.08249 (0.715143s)][1.5148 (0.82027s)][1.09519 (1.01268s)]]
-[[tommath_int][15.4642 (3.10158s)][11.5534 (3.9675s)][10.5164 (5.69467s)][13.8962 (12.8493s)]]
+[[cpp_int][1.8501 (0.364131s)][1.46527 (0.476653s)][1.27509 (0.689738s)][1.20064 (1.11769s)]]
+[[cpp_int(fixed)][[*1] (0.196817s)][[*1] (0.325301s)][[*1] (0.540932s)][[*1] (0.930916s)]]
+[[gmp_int][3.2533 (0.640305s)][2.15441 (0.700832s)][1.47898 (0.800029s)][1.07439 (1.00016s)]]
+[[tommath_int][15.3501 (3.02116s)][12.1106 (3.9396s)][11.0689 (5.98752s)][13.5535 (12.6172s)]]
 ]
 [table Operator %(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.80079 (0.106617s)][1.96413 (0.207216s)][2.09096 (0.395682s)][2.14767 (0.776873s)]]
-[[cpp_int(fixed)][1.73532 (0.10274s)][1.92036 (0.202599s)][2.02172 (0.382579s)][2.07328 (0.749963s)]]
-[[gmp_int][[*1] (0.0592053s)][[*1] (0.1055s)][[*1] (0.189234s)][[*1] (0.361727s)]]
-[[tommath_int][35.6993 (2.11359s)][25.3086 (2.67007s)][21.2701 (4.02504s)][25.8662 (9.3565s)]]
+[[cpp_int][1.82761 (0.104331s)][2.01496 (0.202512s)][2.10004 (0.389523s)][2.17252 (0.768097s)]]
+[[cpp_int(fixed)][1.78851 (0.102099s)][1.96844 (0.197838s)][2.02956 (0.376451s)][2.07257 (0.73276s)]]
+[[gmp_int][[*1] (0.057086s)][[*1] (0.100505s)][[*1] (0.185483s)][[*1] (0.353552s)]]
+[[tommath_int][36.3018 (2.07233s)][26.3075 (2.64402s)][21.9525 (4.07183s)][25.6759 (9.07775s)]]
 ]
 [table Operator construct
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.17135 (0.00274853s)][[*1] (0.00275161s)][[*1] (0.00275161s)][[*1] (0.00344359s)]]
-[[cpp_int(fixed)][[*1] (0.00234646s)][1.54518 (0.00425173s)][2.2494 (0.00618947s)][1.73247 (0.00596591s)]]
-[[gmp_int][85.6802 (0.201045s)][72.6635 (0.199941s)][78.1286 (0.214979s)][58.3553 (0.200952s)]]
-[[tommath_int][87.9831 (0.206449s)][74.8522 (0.205964s)][74.8918 (0.206073s)][63.4572 (0.218521s)]]
+[[cpp_int][1.40211 (0.0026854s)][[*1] (0.00278639s)][[*1] (0.00322813s)][[*1] (0.0027185s)]]
+[[cpp_int(fixed)][[*1] (0.00191526s)][1.40721 (0.00392103s)][1.90346 (0.00614463s)][2.14621 (0.00583447s)]]
+[[gmp_int][98.705 (0.189046s)][68.9726 (0.192184s)][58.8994 (0.190135s)][70.0525 (0.190438s)]]
+[[tommath_int][105.602 (0.202255s)][74.1994 (0.206748s)][63.6455 (0.205456s)][76.8935 (0.209035s)]]
 ]
 [table Operator construct(unsigned)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.43934 (0.00268554s)][[*1] (0.00286887s)][[*1] (0.00283465s)][[*1] (0.00290638s)]]
-[[cpp_int(fixed)][[*1] (0.00186581s)][1.7597 (0.00504834s)][2.07419 (0.00587959s)][1.89871 (0.00551837s)]]
-[[gmp_int][125.861 (0.234832s)][72.7068 (0.208586s)][75.5147 (0.214058s)][71.2679 (0.207131s)]]
-[[tommath_int][240.568 (0.448854s)][155.552 (0.446257s)][157.598 (0.446734s)][160.728 (0.467137s)]]
+[[cpp_int][1.73436 (0.00348927s)][[*1] (0.00263476s)][[*1] (0.0027009s)][[*1] (0.00318651s)]]
+[[cpp_int(fixed)][[*1] (0.00201185s)][1.36851 (0.0036057s)][2.07362 (0.00560064s)][1.66856 (0.00531688s)]]
+[[gmp_int][97.2414 (0.195635s)][76.3759 (0.201232s)][72.7396 (0.196462s)][63.8129 (0.20334s)]]
+[[tommath_int][210.112 (0.422713s)][162.652 (0.42855s)][158.33 (0.427634s)][134.626 (0.428987s)]]
 ]
 [table Operator construct(unsigned long long)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][2.3528 (0.00771495s)][1.61678 (0.00717424s)][1.12087 (0.00715985s)][1.2104 (0.0078878s)]]
-[[cpp_int(fixed)][[*1] (0.00327905s)][[*1] (0.00443737s)][[*1] (0.00638775s)][[*1] (0.00651668s)]]
-[[gmp_int][222.775 (0.730489s)][165.447 (0.734148s)][114.708 (0.732725s)][112.162 (0.730926s)]]
-[[tommath_int][215.962 (0.70815s)][157.945 (0.700858s)][109.582 (0.699985s)][111.909 (0.729275s)]]
-]
-[table Operator str
-[[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.46938 (0.00196575s)][1.37205 (0.00331355s)][1.5689 (0.00862952s)][1.57176 (0.0237239s)]]
-[[cpp_int(fixed)][[*1] (0.00133781s)][[*1] (0.00241504s)][[*1] (0.00550035s)][1.20619 (0.0182059s)]]
-[[gmp_int][1.65482 (0.00221383s)][1.38972 (0.00335622s)][1.13845 (0.0062619s)][[*1] (0.0150938s)]]
-[[tommath_int][13.9845 (0.0187087s)][18.3179 (0.0442384s)][23.3489 (0.128427s)][25.3273 (0.382285s)]]
+[[cpp_int][2.34403 (0.00739542s)][1.66376 (0.00713834s)][1.22989 (0.0074969s)][1.23708 (0.00711417s)]]
+[[cpp_int(fixed)][[*1] (0.00315501s)][[*1] (0.00429049s)][[*1] (0.00609561s)][[*1] (0.0057508s)]]
+[[gmp_int][222.866 (0.703144s)][164.331 (0.705059s)][115.363 (0.70321s)][122.347 (0.703596s)]]
+[[tommath_int][218.681 (0.689941s)][163.796 (0.702765s)][114.57 (0.698376s)][122.422 (0.704027s)]]
 ]
 [table Operator gcd
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][2.03241 (5.06795s)][1.89904 (11.3002s)][1.99735 (27.4027s)][2.20708 (73.7574s)]]
-[[cpp_int(fixed)][1.67874 (4.18605s)][1.70044 (10.1184s)][1.96475 (26.9554s)][2.28347 (76.31s)]]
-[[gmp_int][[*1] (2.49357s)][[*1] (5.95047s)][[*1] (13.7195s)][[*1] (33.4185s)]]
-[[tommath_int][5.01832 (12.5135s)][4.41659 (26.2808s)][4.08042 (55.9814s)][3.97901 (132.972s)]]
+[[cpp_int][1.16358 (2.74442s)][1.39847 (8.11559s)][1.64677 (22.2518s)][1.95096 (64.4961s)]]
+[[cpp_int(fixed)][[*1] (2.35859s)][1.30986 (7.60133s)][1.67681 (22.6577s)][2.0895 (69.0758s)]]
+[[gmp_int][1.03392 (2.4386s)][[*1] (5.80319s)][[*1] (13.5124s)][[*1] (33.0586s)]]
+[[tommath_int][5.25978 (12.4057s)][4.4619 (25.8932s)][4.15577 (56.1542s)][3.91192 (129.323s)]]
+]
+[table Operator powm
+[[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
+[[cpp_int][2.50722 (2.91621s)][3.5561 (13.406s)][4.37066 (73.483s)][4.88831 (473.91s)]]
+[[cpp_int(fixed)][1.93385 (2.24931s)][3.18107 (11.9922s)][4.20753 (70.7403s)][4.8158 (466.88s)]]
+[[gmp_int][[*1] (1.16313s)][[*1] (3.76986s)][[*1] (16.8128s)][[*1] (96.9476s)]]
+[[tommath_int][1.44081 (1.67584s)][1.8794 (7.08507s)][2.19115 (36.8394s)][2.17186 (210.557s)]]
 ]
-[table Operator &
-[[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.00344 (0.0315529s)][[*1] (0.0426295s)][[*1] (0.0543214s)][1.06624 (0.0835064s)]]
-[[cpp_int(fixed)][[*1] (0.0314446s)][1.0808 (0.046074s)][1.06116 (0.0576436s)][[*1] (0.0783186s)]]
-[[gmp_int][1.78372 (0.0560885s)][1.58661 (0.0676363s)][1.5738 (0.0854908s)][1.83409 (0.143644s)]]
-[[tommath_int][4.08054 (0.128311s)][3.50852 (0.149567s)][2.88826 (0.156894s)][4.45879 (0.349206s)]]
-]
-[table Operator &(int)
+[table Operator str
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0367605s)][[*1] (0.0485394s)][[*1] (0.0650023s)][[*1] (0.099751s)]]
-[[cpp_int(fixed)][1.00324 (0.0368795s)][1.06734 (0.0518081s)][1.05192 (0.0683771s)][1.05296 (0.105034s)]]
-[[gmp_int][4.00058 (0.147063s)][3.02928 (0.147039s)][2.22221 (0.144449s)][1.45749 (0.145386s)]]
-[[tommath_int][8.83732 (0.324864s)][6.95191 (0.337442s)][5.42556 (0.352674s)][6.10829 (0.609309s)]]
+[[cpp_int][1.17175 (0.00160006s)][1.41999 (0.00329476s)][1.40856 (0.00813784s)][1.52964 (0.0229767s)]]
+[[cpp_int(fixed)][[*1] (0.00136554s)][[*1] (0.00232027s)][[*1] (0.00577741s)][1.14754 (0.0172372s)]]
+[[gmp_int][1.50501 (0.00205515s)][1.52968 (0.00354926s)][1.01989 (0.0058923s)][[*1] (0.015021s)]]
+[[tommath_int][12.2161 (0.0166816s)][16.9577 (0.0393463s)][18.7474 (0.108311s)][22.7368 (0.341528s)]]
 ]
 [table Operator |
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0312723s)][[*1] (0.0428385s)][[*1] (0.0528083s)][[*1] (0.0827344s)]]
-[[cpp_int(fixed)][1.0311 (0.0322449s)][1.20267 (0.0515207s)][1.27028 (0.0670814s)][1.19432 (0.0988112s)]]
-[[gmp_int][1.55273 (0.0485576s)][1.4656 (0.0627839s)][1.66721 (0.0880424s)][1.67004 (0.13817s)]]
-[[tommath_int][4.15311 (0.129877s)][3.39008 (0.145226s)][2.88739 (0.152478s)][4.20575 (0.34796s)]]
+[[cpp_int][[*1] (0.0301617s)][[*1] (0.0423404s)][[*1] (0.0522358s)][[*1] (0.0813156s)]]
+[[cpp_int(fixed)][1.0638 (0.0320861s)][1.22566 (0.0518951s)][1.28515 (0.0671305s)][1.16118 (0.094422s)]]
+[[gmp_int][1.76553 (0.0532514s)][1.51489 (0.0641408s)][1.70708 (0.0891706s)][1.77346 (0.14421s)]]
+[[tommath_int][4.37637 (0.131999s)][3.46212 (0.146587s)][2.91875 (0.152463s)][4.19621 (0.341217s)]]
 ]
 [table Operator |(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][1.01685 (0.030066s)][[*1] (0.0360965s)][[*1] (0.0402109s)][[*1] (0.0527074s)]]
-[[cpp_int(fixed)][[*1] (0.0295677s)][1.50234 (0.0542292s)][1.52609 (0.0613656s)][1.37526 (0.0724863s)]]
-[[gmp_int][4.84414 (0.14323s)][3.99297 (0.144132s)][3.85375 (0.154963s)][2.91129 (0.153447s)]]
-[[tommath_int][10.8218 (0.319975s)][9.05203 (0.326747s)][8.32597 (0.334795s)][10.948 (0.577039s)]]
+[[cpp_int][[*1] (0.0289129s)][[*1] (0.0351119s)][[*1] (0.0406779s)][[*1] (0.0525891s)]]
+[[cpp_int(fixed)][1.06091 (0.030674s)][1.25979 (0.0442336s)][1.36194 (0.0554009s)][1.37438 (0.0722772s)]]
+[[gmp_int][4.92854 (0.142498s)][4.34687 (0.152627s)][3.71442 (0.151095s)][2.981 (0.156768s)]]
+[[tommath_int][10.9847 (0.317598s)][9.37065 (0.329021s)][8.53651 (0.347248s)][11.2155 (0.589813s)]]
 ]
 [table Operator ^
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0311003s)][[*1] (0.0430909s)][[*1] (0.0530915s)][[*1] (0.0842599s)]]
-[[cpp_int(fixed)][1.04721 (0.0325686s)][1.18557 (0.0510874s)][1.25714 (0.0667433s)][1.14462 (0.0964459s)]]
-[[gmp_int][1.59277 (0.0495356s)][1.47967 (0.0637601s)][1.73243 (0.0919772s)][1.68499 (0.141977s)]]
-[[tommath_int][4.17425 (0.12982s)][3.41013 (0.146946s)][2.8988 (0.153902s)][4.17074 (0.351426s)]]
+[[cpp_int][[*1] (0.0305149s)][[*1] (0.04217s)][[*1] (0.0525977s)][[*1] (0.0816632s)]]
+[[cpp_int(fixed)][1.01544 (0.0309861s)][1.24872 (0.0526585s)][1.26661 (0.066621s)][1.15965 (0.0947007s)]]
+[[gmp_int][1.64675 (0.0502505s)][1.47181 (0.0620663s)][1.66038 (0.0873322s)][1.67895 (0.137108s)]]
+[[tommath_int][4.30668 (0.131418s)][3.45859 (0.145849s)][2.91462 (0.153303s)][4.15538 (0.339342s)]]
 ]
 [table Operator ^(int)
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0290428s)][[*1] (0.0360261s)][[*1] (0.0409722s)][[*1] (0.0541785s)]]
-[[cpp_int(fixed)][1.01484 (0.0294736s)][1.4898 (0.0536716s)][1.34782 (0.0552234s)][1.35054 (0.0731703s)]]
-[[gmp_int][4.94574 (0.143638s)][4.05569 (0.146111s)][3.65257 (0.149654s)][2.89039 (0.156597s)]]
-[[tommath_int][10.8939 (0.316389s)][9.21322 (0.331916s)][8.17995 (0.335151s)][10.6902 (0.579178s)]]
+[[cpp_int][1.01566 (0.0296088s)][[*1] (0.0356634s)][[*1] (0.0401898s)][[*1] (0.0514097s)]]
+[[cpp_int(fixed)][[*1] (0.0291524s)][1.2393 (0.0441976s)][1.38556 (0.0556856s)][1.38899 (0.0714075s)]]
+[[gmp_int][4.68027 (0.136441s)][4.15243 (0.14809s)][3.74237 (0.150405s)][3.0483 (0.156712s)]]
+[[tommath_int][10.919 (0.318314s)][9.16311 (0.326788s)][8.62554 (0.346659s)][11.6212 (0.597442s)]]
+]
+[table Operator &
+[[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
+[[cpp_int][1.0346 (0.0303431s)][[*1] (0.0427309s)][[*1] (0.0535587s)][1.06945 (0.0828084s)]]
+[[cpp_int(fixed)][[*1] (0.0293284s)][1.10435 (0.04719s)][1.05262 (0.0563769s)][[*1] (0.0774309s)]]
+[[gmp_int][1.86057 (0.0545675s)][1.58432 (0.0676995s)][1.69164 (0.0906018s)][1.86625 (0.144505s)]]
+[[tommath_int][4.4157 (0.129506s)][3.60396 (0.154s)][2.95985 (0.158525s)][4.4032 (0.340944s)]]
+]
+[table Operator &(int)
+[[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
+[[cpp_int][1.05874 (0.038946s)][[*1] (0.0483903s)][[*1] (0.063842s)][[*1] (0.100361s)]]
+[[cpp_int(fixed)][[*1] (0.0367853s)][1.05827 (0.0512099s)][1.09114 (0.0696605s)][1.09432 (0.109826s)]]
+[[gmp_int][3.92298 (0.144308s)][2.99447 (0.144903s)][2.228 (0.14224s)][1.42296 (0.142809s)]]
+[[tommath_int][8.79208 (0.323419s)][7.02288 (0.339839s)][5.65271 (0.36088s)][6.27104 (0.629365s)]]
 ]
 [table Operator <<
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0253777s)][1.04239 (0.034484s)][[*1] (0.0420979s)][[*1] (0.0623485s)]]
-[[cpp_int(fixed)][1.05039 (0.0266563s)][1.40679 (0.0465388s)][1.34077 (0.0564434s)][1.20319 (0.0750171s)]]
-[[gmp_int][1.0359 (0.0262888s)][[*1] (0.0330815s)][1.1625 (0.0489388s)][1.16511 (0.0726428s)]]
-[[tommath_int][1.65904 (0.0421025s)][2.11201 (0.0698686s)][2.36727 (0.0996572s)][2.701 (0.168403s)]]
+[[cpp_int][[*1] (0.0248801s)][1.23196 (0.04s)][[*1] (0.0424149s)][[*1] (0.060157s)]]
+[[cpp_int(fixed)][1.08931 (0.027102s)][1.40572 (0.0456418s)][1.3475 (0.0571542s)][1.24573 (0.0749397s)]]
+[[gmp_int][1.05561 (0.0262636s)][[*1] (0.0324686s)][1.09914 (0.0466199s)][1.16315 (0.0699719s)]]
+[[tommath_int][1.60497 (0.0399319s)][2.13048 (0.0691737s)][2.31219 (0.0980712s)][2.74695 (0.165248s)]]
 ]
 [table Operator >>
 [[Backend][128 Bits][256 Bits][512 Bits][1024 Bits]]
-[[cpp_int][[*1] (0.0221035s)][1.0337 (0.0313761s)][1.03419 (0.0355718s)][1.20366 (0.0453508s)]]
-[[cpp_int(fixed)][1.1036 (0.0243933s)][1.12323 (0.0340936s)][1.40181 (0.0482162s)][1.69985 (0.0640463s)]]
-[[gmp_int][1.30456 (0.0288354s)][[*1] (0.0303532s)][[*1] (0.0343958s)][[*1] (0.0376776s)]]
-[[tommath_int][10.5766 (0.233779s)][9.0959 (0.27609s)][8.6249 (0.29666s)][13.6818 (0.515498s)]]
+[[cpp_int][[*1] (0.0213349s)][1.02127 (0.0295019s)][[*1] (0.0327116s)][1.13168 (0.0433804s)]]
+[[cpp_int(fixed)][1.13514 (0.0242181s)][1.16938 (0.0337803s)][1.46999 (0.0480859s)][1.60077 (0.061362s)]]
+[[gmp_int][1.26614 (0.0270129s)][[*1] (0.0288873s)][1.42219 (0.0465221s)][[*1] (0.0383329s)]]
+[[tommath_int][12.0066 (0.25616s)][10.2837 (0.297067s)][9.99696 (0.327017s)][16.0943 (0.616942s)]]
 ]
 
 Test code was compiled with Microsoft Visual Studio 2010 with all optimisations

Modified: trunk/libs/multiprecision/test/Jamfile.v2
==============================================================================
--- trunk/libs/multiprecision/test/Jamfile.v2 (original)
+++ trunk/libs/multiprecision/test/Jamfile.v2 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -26,6 +26,8 @@
    <toolset>msvc:<runtime-link>static
    <toolset>msvc:<link>static
    <toolset>msvc:<warnings>all
+ <toolset>intel-win:<runtime-link>static
+ <toolset>intel-win:<link>static
    # Speed up compiles:
    <toolset>msvc:<debug-symbols>off
    <toolset>intel:<debug-symbols>off

Modified: trunk/libs/multiprecision/test/test_cpp_int.cpp
==============================================================================
--- trunk/libs/multiprecision/test/test_cpp_int.cpp (original)
+++ trunk/libs/multiprecision/test/test_cpp_int.cpp 2012-12-14 13:37:27 EST (Fri, 14 Dec 2012)
@@ -332,6 +332,7 @@
          BOOST_CHECK_EQUAL(mpz_int(powm(a, b, ui)).str(), test_type(powm(a1, b1, ui)).str());
          BOOST_CHECK_EQUAL(mpz_int(powm(a, ui, c)).str(), test_type(powm(a1, ui, c1)).str());
       }
+ BOOST_CHECK_EQUAL(lsb(a), lsb(a1));
    }
 
    void test()


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk