John Maddock
672cd76754
Refactor test_arithmetic.cpp into lots of small files for reduced dependencies.
...
Changed use of __forceinline to release builds only.
[SVN r81654]
2012-12-01 16:19:23 +00:00
Christopher Kormanyos
5f14980691
Improved cpp_dec_float::extract_parts to handle sizeof(double) exceeding 8 bytes.
...
[SVN r81638]
2012-11-30 20:22:10 +00:00
John Maddock
9c7f52ec7f
Suppress GCC warning.
...
[SVN r81634]
2012-11-30 16:29:17 +00:00
John Maddock
477fec65e1
TRy and disable some VC11 warnings.
...
[SVN r81529]
2012-11-25 18:01:46 +00:00
John Maddock
3523e32a6c
Fix for aliasing bug.
...
[SVN r81526]
2012-11-25 11:50:54 +00:00
John Maddock
b9b28eefa7
Fix for gcc-4.4.x: rvalue reference support in gcc-4.4 isn't good enough for our use cases.
...
[SVN r81510]
2012-11-24 18:28:04 +00:00
John Maddock
114aeb386b
Simply enable_if usage in cpp_int_backend: try to fix Intel-11 failures.
...
Improve test_cpp_int.cpp.
Improve config tests.
[SVN r81487]
2012-11-22 17:21:01 +00:00
John Maddock
d6feeb290d
Small optimisation for integer modulus.
...
[SVN r81477]
2012-11-22 09:56:47 +00:00
Marshall Clow
03af4f817c
Remove usage of deprecated macros
...
[SVN r81467]
2012-11-21 21:32:26 +00:00
John Maddock
09f3928f5a
Fix clang failures
...
[SVN r81464]
2012-11-21 17:54:50 +00:00
John Maddock
cbb9e41226
Try and fix some Clang failures.
...
Also remove noexcept specifications from cpp_dec_float: calls to lexical_cast deep in the call tree, make it pretty much impossible to analyse by hand.
[SVN r81427]
2012-11-19 18:18:51 +00:00
John Maddock
3168afc5ec
Misc minor fixes for VC9.
...
[SVN r81423]
2012-11-19 13:30:33 +00:00
John Maddock
d38ad7997d
Fix misplaced use of typename.
...
[SVN r81422]
2012-11-19 12:27:53 +00:00
John Maddock
8ae04c68a6
Merge multiprecision from sandbox.
...
[SVN r81417]
2012-11-18 18:56:59 +00:00
John Maddock
4071dd8d59
Fix missing number constructor.
...
Fix is_explicitly_convertible to take account of the generic conversions.
Change sf_performance to use multiple files so we can actually compile the thing!
Minor doc updates.
Suppress some more warnings.
[SVN r81324]
2012-11-13 17:12:19 +00:00
John Maddock
3430188795
Add overloads of the integer-only functions which work with native integer types.
...
Ensure powm promotes fixed precision types to avoid numeric overflow.
Allow the Miller-Rabin code to be used by native integers.
Fix Miller Rabin tests to actually return the test result!
Fix some bugs in cpp_int unsigned arithmetic, and ensure the Miller Rabin and random number code can be safely used with checked fixed precision integers.
[SVN r81269]
2012-11-09 18:55:19 +00:00
John Maddock
a9bcf67b4b
Fix errors resulting from incorrect noexcept specifications and no numeric_limits support for __int128
...
[SVN r81211]
2012-11-05 19:05:31 +00:00
John Maddock
e3deed1fdf
Optimize cpp_int multiplication with precision extension.
...
Turn off some warnings.
[SVN r81200]
2012-11-05 12:36:25 +00:00
John Maddock
e599ca723c
Fix missing typename.
...
[SVN r81169]
2012-11-04 12:08:37 +00:00
John Maddock
da40611f57
Fix mpfr_float_backend interconversions.
...
Update docs and regenerate.
[SVN r81163]
2012-11-03 18:27:11 +00:00
John Maddock
788449ffa5
Add non-member functions for mixed precision arithmetic + tests for same.
...
Fix a couple of bugs discovered along the way.
[SVN r81151]
2012-11-02 19:13:50 +00:00
John Maddock
b640732abd
Add additional template parameter to mpfr_float_backend to allow stack-based floats.
...
[SVN r81135]
2012-11-01 19:01:08 +00:00
John Maddock
c587f1550b
Update and regenerate docs.
...
Fix error in expression template unpacking that occasionally caused variable over-writes.
Update Math lib tests to test at least one non-ET type.
[SVN r81121]
2012-10-31 17:06:33 +00:00
John Maddock
645fe8865c
Add tests for checked ints and fix failures.
...
Make negating an unsigned int an error, and fix resulting test failures.
Change allocator defaults to be void when the allocator is not actually required.
[SVN r81070]
2012-10-27 17:48:33 +00:00
John Maddock
e3b56e3f7c
Fix constexpr support.
...
[SVN r81063]
2012-10-25 11:53:25 +00:00
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
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
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
e2ef393c23
Big search and replace rename, removing mp_ prefix.
...
[SVN r79932]
2012-08-08 18:14:50 +00:00