Commit Graph

98 Commits

Author SHA1 Message Date
John Maddock
bea3707326 Add initial version of an arbitrary precision integer type.
Hook up some more fixed_int tests.

[SVN r77141]
2012-02-29 13:05:51 +00:00
John Maddock
fda499be43 Fix memory leaks / bugs in mpq_t and tommath support.
[SVN r77140]
2012-02-29 10:42:23 +00:00
John Maddock
eb631b8291 Fix some multiple initializations of mpz_t.
[SVN r77128]
2012-02-27 17:10:46 +00:00
John Maddock
1b73913249 Fix some C++0x errors.
[SVN r77088]
2012-02-21 18:19:02 +00:00
John Maddock
8d6dedf4b0 Complete renaming of cpp_float to cpp_dec_float.
Rebuild docs.

[SVN r77037]
2012-02-16 09:36:26 +00:00
John Maddock
380d627359 Big search and replace: change cpp_float to cpp_dec_float.
Also fix up some numeric_limits test failures.

[SVN r77032]
2012-02-15 13:09:45 +00:00
John Maddock
d69424adad Fix bug in fixed_int::convert_to with negative numbers.
Fix bug in fixed_int shift operator when shifting by 0.
Add preliminary gcd/lcm support for integer types.
Add static asserts to floating-point only functions.

[SVN r76706]
2012-01-26 10:11:10 +00:00
John Maddock
4b844fc60c Improve performance of fixed_int divide and string conversion.
Add mixed integer ops to fixed_int.
Improve fixed_int test cases.
Add improved default forwarding functions that preserve arithmetic type arguments.
Fix some operator overloads.
Update performance tests.

[SVN r76639]
2012-01-22 19:12:37 +00:00
John Maddock
a7d4ab19fb Tweak division and string conversion routines for better performance - sadly we're still way behind GMP on these (though better than libtommath).
[SVN r76609]
2012-01-21 13:12:56 +00:00
John Maddock
a53f46637e Fix Linux 64 failures
[SVN r76593]
2012-01-20 17:15:22 +00:00
John Maddock
3c13b7a4d1 Add missing file.
Fix some inconsistent uses of long long and intmax_t.

[SVN r76573]
2012-01-18 12:16:20 +00:00
John Maddock
ca5a793b3d Rejig intmax_t and long long usage to be much more consistent.
[SVN r76550]
2012-01-17 13:06:33 +00:00
John Maddock
c98f15f30d Update docs with performance results.
Add component based initialization of rationals.

[SVN r76486]
2012-01-14 13:24:52 +00:00
John Maddock
a7d480c438 Optimize increment and decrement.
[SVN r76434]
2012-01-12 17:03:27 +00:00
John Maddock
a97c3bd896 Update docs to include fixed_int.hpp.
Remove 64-bit versions of fixed_int typedefs - better to use boost::int64_t instead.

[SVN r76433]
2012-01-12 13:56:22 +00:00
John Maddock
e5c5802d9f Tidy up type usage.
[SVN r76431]
2012-01-12 12:29:52 +00:00
John Maddock
036dc2bacc Rename files.
[SVN r76429]
2012-01-12 12:06:27 +00:00
John Maddock
db83a1c4ad Tentative rename of packed_cpp_int to fixed_int.
[SVN r76428]
2012-01-12 11:55:09 +00:00
John Maddock
8c28b89dfc Fix GCC failures and generally improve performance of packed_cpp_int.
[SVN r76409]
2012-01-11 11:53:49 +00:00
John Maddock
99707d8925 Switch to faster division code and add better test case for packed int's.
[SVN r76398]
2012-01-10 13:20:29 +00:00
John Maddock
8dec0e4db6 Add initial performance test program for testing basic arithmetic.
Fix header include on packed_cpp_int.hpp and add numeric_limits min/max values.

[SVN r76279]
2012-01-02 17:45:49 +00:00
John Maddock
9a1f7c14a5 Update special functions performance test and add generic lanczos support to floating point types.
[SVN r76252]
2012-01-01 11:37:46 +00:00
John Maddock
30310e4a52 Another Boost.Rational fix.
Add tentative version of a fixed width, bit-packed 2's complement integer type.

[SVN r76234]
2011-12-30 18:21:08 +00:00
John Maddock
d7578f242c Add numerator/denominator accessor functions to rational_adapter.hpp.
Define predefined rational number type for libtommath.
Add rational number specific tests to test_arithmetic.cpp.
Document rational_adapter and related stuff, regenerate docs.

[SVN r76130]
2011-12-24 13:13:16 +00:00
John Maddock
c32e35aace Fix File IO and string conversion for rational_adapter, and update tests accordingly.
[SVN r76129]
2011-12-24 11:59:25 +00:00
John Maddock
b9ea00966f Fix modulus operations for negative numbers that should yield zero results (and update tests to match).
Fix boost::rational comparison operator support.
Fix GCC failures in test_rational_io.cpp.
Add adapter for rational types.

[SVN r76128]
2011-12-24 10:07:32 +00:00
John Maddock
a2dc3b968c Fix remaining Boost.Rational support issues and add rational number IO test.
[SVN r76121]
2011-12-23 17:13:29 +00:00
John Maddock
3327eb6b8b Fix some MSVC warnings.
[SVN r76082]
2011-12-20 16:46:54 +00:00
John Maddock
6e3ab5380b Add tests for Boost.Math special functions, and fix whatever errors came up in running those tests.
Add workaround for compilers that don't have a std::abs(long long).

[SVN r76079]
2011-12-20 16:19:55 +00:00
John Maddock
018ac8cd6c Begin adding tests taken from Boost.Math and fix the issues they flag up.
[SVN r75832]
2011-12-06 19:03:41 +00:00
John Maddock
fdcc1a5034 Document libtommath support, add error checking to tommath bitwise operators.
[SVN r75746]
2011-11-30 12:08:59 +00:00
John Maddock
d76492ddaa Suppress some GCC warnings.
[SVN r75723]
2011-11-29 12:27:40 +00:00
John Maddock
4a9845ac7e Fix and test integer formatted output.
[SVN r75716]
2011-11-28 19:24:20 +00:00
John Maddock
7143af0191 Fix IO of infinities and NaN's.
Add IO round trip test and adjust max_digits10 accordingly.

[SVN r75714]
2011-11-28 16:28:31 +00:00
John Maddock
ffc6bcedc9 Fix float IO and add test.
[SVN r75707]
2011-11-28 09:13:12 +00:00
John Maddock
a82c12c447 Mostly fix IO failures.
[SVN r75644]
2011-11-24 17:27:17 +00:00
John Maddock
a448d536d0 Re-factor and fix (again) floating point formatting.
[SVN r75637]
2011-11-23 10:14:41 +00:00
John Maddock
b3048e4ad2 Fix bug in previous formatting code.
[SVN r75603]
2011-11-22 10:07:24 +00:00
John Maddock
40123e7170 Change number formatting when std::ios_base::fixed is set to print the requested number of digits, padding with zeros as required.
[SVN r75602]
2011-11-22 09:51:58 +00:00
John Maddock
60525e3a9b Fix showpos support.
[SVN r75597]
2011-11-21 19:20:35 +00:00
John Maddock
ecead4525a Suppress MSVC warnings in tests.
Add support for std::ios_base::fmtflags in string formatting.
Fix the errors that result from above change!

[SVN r75586]
2011-11-21 09:52:32 +00:00
John Maddock
cd31fbde7a Fix operator>> for mp_number.
Add template inter-conversions on cpp_float.
Adjust precision of test reporting.

[SVN r75520]
2011-11-17 18:08:51 +00:00
John Maddock
b653174c77 Add enhanced testing support.
Remove throw statements for BOOST_THROW_EXCEPTION.
Remove throw() qualifiers: they're a dis-optimization.

[SVN r75511]
2011-11-16 17:36:40 +00:00
John Maddock
050ae32c44 Add initial libtommath support.
Fix use of noexcept.
Remove dead files.

[SVN r75505]
2011-11-16 09:40:05 +00:00
John Maddock
0c413f7352 Change real_types to float_types.
[SVN r75489]
2011-11-14 13:39:10 +00:00
John Maddock
b85306e076 Fix remaining cpp_float bugs.
Fix use of expression templates in conditional expressions.

[SVN r75485]
2011-11-14 12:19:17 +00:00
John Maddock
40d1b2f1dd Add sqrt tests.
Fix remaining cpp_float failures.

[SVN r75478]
2011-11-13 17:36:39 +00:00
John Maddock
0bf6917f18 Remove dead file.
[SVN r75454]
2011-11-12 13:16:39 +00:00
John Maddock
c8eda6845e Search and replace - rename mp_float cpp_float.
[SVN r75453]
2011-11-12 13:15:33 +00:00
John Maddock
47724a4221 Fixes for bugs in mp_float.
Fix constant initialization.
Add some instrumentation code.
Make mp_exp constructor explicit.
Remove some dead code.
Note mp_float division has outstanding bugs still!!

[SVN r75452]
2011-11-12 12:15:04 +00:00