Commit Graph

1243 Commits

Author SHA1 Message Date
John Maddock
82409d86a0 Minor changes for __int128 support and fix some C++0x issues
[SVN r81062]
2012-10-25 09:29:04 +00:00
John Maddock
a857186cb4 Big "blow it away and start again" refactoring of cpp_int.
Adds support for runtime checking, enumerated template params, fixed precision with allocator, and no "hidden" template parameters.

[SVN r81054]
2012-10-24 16:00:05 +00:00
John Maddock
5256e108a1 Fix Intel -x64 failures.
[SVN r80609]
2012-09-20 18:21:07 +00:00
John Maddock
4f2738fd6f Add traits class to determine default ExpressionTemplate parameter value.
Add support for fused-multiply-add/subtract.
Optimise temporary usage when the LHS also appears on the RHS.

[SVN r80607]
2012-09-20 16:04:02 +00:00
John Maddock
741f98585d Remove dead code.
[SVN r80580]
2012-09-18 17:02:45 +00:00
John Maddock
dd7ee60431 Fix GCC C++11 mode failures.
Tidy up TODO list.

[SVN r80577]
2012-09-18 16:47:03 +00:00
John Maddock
9f8b30fcdf Update docs with review comments.
Update a few tests based on review comments.
Regenerate docs.

[SVN r80539]
2012-09-16 12:25:14 +00:00
John Maddock
fc1cda1f62 Largely cosmetic change - add two new template params to cpp_dec_float - one for the exponent type, and one for an optional allocator.
[SVN r80431]
2012-09-07 08:31:49 +00:00
John Maddock
a2c8fc060f Rebuild docs.
[SVN r80419]
2012-09-06 09:52:28 +00:00
John Maddock
6dfcc7e526 Big search and replace change of name for the ExpressionTemplates template parameter to class number.
[SVN r80418]
2012-09-06 09:50:47 +00:00
John Maddock
d561dfe50b Allow mixed precision arithmetic in the cpp_int backend.
[SVN r80408]
2012-09-05 16:46:54 +00:00
John Maddock
9edbdc0ca4 Enable optimisations in the GMP and MPFR backends for mixed mode arithmetic.
Allow mixed arithmetic between two different expression templates.
Change docs to indicate mixed arithmetic is allowed and rebuild.

[SVN r80397]
2012-09-04 17:18:18 +00:00
John Maddock
ce3354335c Allow mixed precision binary operations.
Add tests for basic mixed precision usage.

[SVN r80394]
2012-09-04 08:20:26 +00:00
John Maddock
c7230f94ff Extra test cases for more complete coverage.
Added test coverage makefile.
Fixed errors from extra test cases.
Rename a few traits.

[SVN r80328]
2012-08-31 11:57:55 +00:00
John Maddock
1e00790703 Rename mp_number_archetype.
Update docs with explicit conversion info.
Regenerate docs.

[SVN r80261]
2012-08-27 12:30:53 +00:00
John Maddock
6e58c919a6 Delete dead code.
[SVN r80248]
2012-08-27 09:51:35 +00:00
John Maddock
944b0439a7 Fix explicit conversion operators for GCC-4.6.x
[SVN r80237]
2012-08-26 16:46:44 +00:00
John Maddock
d9901b5144 Fix remaining GCC C++11 failures.
Fix buggy test cases.

[SVN r80166]
2012-08-24 11:08:44 +00:00
John Maddock
145fa2cdd4 Inching closer to getting GCC to compile the tests again...
[SVN r80153]
2012-08-23 11:24:33 +00:00
John Maddock
6157674972 Fix rational_adapter's implicit/explicit constructors.
Add converting constructors for trivial cpp_int's and test.
Both fix GCC errors.

[SVN r80120]
2012-08-21 18:17:57 +00:00
John Maddock
9d5a0bc87a Fix a few GCC warnings and errors
[SVN r80115]
2012-08-21 16:24:05 +00:00
John Maddock
d609434125 Add missing files, fix the worst of the GCC build failures.
[SVN r80114]
2012-08-21 15:47:32 +00:00
John Maddock
af9e0c2fe7 Add more explicit constructors and tests for them.
Centralise digits10 to digits2 conversions.

[SVN r80112]
2012-08-21 14:42:15 +00:00
John Maddock
1f35bfe581 Make some gmp constructors explicit.
Add tests to verify that explicit conversions fail.
Fix failures inside number.hpp.

[SVN r80083]
2012-08-19 16:39:24 +00:00
John Maddock
b892e3f5ab Big breaking change - make lossy construction explicit.
[SVN r80058]
2012-08-16 08:13:51 +00:00
John Maddock
6fe80f07de Much improved concept docs.
Regenerate docs.
Make some cpp_int specific routines generic instead.
Changed divide-by-zero to be an overflow error.

[SVN r79952]
2012-08-10 08:37:37 +00:00
John Maddock
6f317ee809 Rebuild docs.
[SVN r79933]
2012-08-08 18:25:27 +00:00
John Maddock
e2ef393c23 Big search and replace rename, removing mp_ prefix.
[SVN r79932]
2012-08-08 18:14:50 +00:00
John Maddock
8807532ee4 Added explicit conversion operators.
Moved some files into /detail/

[SVN r79926]
2012-08-08 16:12:33 +00:00
John Maddock
3bcbb056e7 Add better error checking for moved-from types.
[SVN r79913]
2012-08-07 17:55:32 +00:00
John Maddock
c8c3610cdc Fix uBlas tests and failures resulting from them.
[SVN r79902]
2012-08-07 11:47:25 +00:00
John Maddock
821afe64fb Add uBlas interoperability tests.
Add file include tests.

[SVN r79894]
2012-08-07 08:10:07 +00:00
John Maddock
7a7a287def Fix C++11 compiler issues
[SVN r79861]
2012-08-04 10:59:56 +00:00
John Maddock
bb2ac1a969 Mark up some functions as being forced inline.
[SVN r79859]
2012-08-03 18:24:53 +00:00
John Maddock
7111ca4216 Fix buglets in performance test code.
Explain delaunay code digit usage better.

[SVN r79857]
2012-08-03 12:18:10 +00:00
John Maddock
2fb7c1a044 Fix Linux x64 C++0x build issues.
[SVN r79854]
2012-08-02 17:14:17 +00:00
John Maddock
8a54889f35 Update comparison operators for better efficiency.
Rework delaunay performance test to use less disk space.

[SVN r79848]
2012-08-02 12:27:00 +00:00
John Maddock
c79fb41526 Rework comparison operators - note that existing backends are made less efficient by this at present.
[SVN r79823]
2012-07-31 18:14:14 +00:00
John Maddock
5711748ee1 Fix misc bugs introduced in last commit.
[SVN r79804]
2012-07-30 17:51:47 +00:00
John Maddock
36847e4e0b Add delaunay performance test case.
Rework rvalue reference support for better performance.
Rework default operators for better performance.

[SVN r79802]
2012-07-30 15:23:51 +00:00
John Maddock
64fe0089d3 Refactor concept checks for faster compilers.
Add constexpr construction test.

[SVN r79724]
2012-07-24 18:03:54 +00:00
John Maddock
7b353cb296 Fix Linux x64 failures.
[SVN r79700]
2012-07-23 17:47:44 +00:00
John Maddock
281c667b71 Update frontend to allow direct construction of backend.
Improve construction times for cpp_int from integers.
Allow constexpr construction.
Allow fixed precision cpp_int's with small bit counts.

[SVN r79692]
2012-07-23 08:57:44 +00:00
John Maddock
08ee67ccc2 Fix some 64-bit compilation issues.
[SVN r79362]
2012-07-08 17:54:35 +00:00
John Maddock
19ee491c55 Add noexcept support/markup where possible.
[SVN r79331]
2012-07-07 11:16:28 +00:00
John Maddock
f4a922e325 Fix some asserts and comments, plus one C++11 issue.
[SVN r79250]
2012-07-03 18:18:08 +00:00
John Maddock
ccf276db86 Add tentative noexcept support.
[SVN r79243]
2012-07-03 12:32:17 +00:00
John Maddock
26905dc5ea Fix non ET operators to return by value (not rvalue refs as that's unsafe - thanks to Howard Hinnant for the test case).
Fix move constructors to actually move!
Add move test case.
Add better move support throughout the lib.

[SVN r79224]
2012-07-02 08:08:28 +00:00
John Maddock
2ea2ab8a2b Add better rvalue reference support to the non-expression template operators.
Add numeric_limits member definitions.

[SVN r79187]
2012-06-30 16:48:17 +00:00
John Maddock
1a4e3af5c8 Fix Linux x64 errors
[SVN r79165]
2012-06-29 11:53:25 +00:00