Commit Graph

275 Commits

Author SHA1 Message Date
John Maddock
73210bb222 Apply remaining fixes from #8732.
Also adds msb (most significant bit) function to multiprecision.
Fixes #8732.

[SVN r84921]
2013-07-01 15:43:28 +00:00
John Maddock
3b8f3a84ba Remove some unused typedefs: fixes some gcc-4.8 warnings
[SVN r84904]
2013-06-25 17:48:04 +00:00
John Maddock
22b76da209 Add missing #include
[SVN r84898]
2013-06-24 12:08:20 +00:00
John Maddock
2a5a4b60f8 Add some typecasts to ensure conversion from negative values proceeds correctly.
Fix masking of values during construction so overflow wraps around in unchecked fixed precision integers.
Add tests for above changes.
Refs #8711.

[SVN r84897]
2013-06-24 10:36:01 +00:00
John Maddock
74d3d5d726 Fix MPFI constant initialization.
[SVN r84866]
2013-06-21 17:41:40 +00:00
John Maddock
e064bea8a9 Make unary + operator return by value - we can generate dangling references otherwise.
[SVN r84863]
2013-06-21 15:58:03 +00:00
John Maddock
5303c9556a Fix bug in shift operator that doesn't always normalise when we should.
[SVN r84795]
2013-06-15 16:11:37 +00:00
John Maddock
fb2460c5d2 Add some noexcept specs to gmp_int.
[SVN r84777]
2013-06-14 12:42:36 +00:00
John Maddock
46aad8e4c2 Apply patch from #8692.
Refs #8692.

[SVN r84763]
2013-06-13 16:21:59 +00:00
John Maddock
ad76df9f77 Change type of string index to std::string::difference_type.
[SVN r84729]
2013-06-10 15:32:34 +00:00
John Maddock
d073af87c5 Fix for 0 % N giving wrong answer in cpp_int.
Refs #8670.

[SVN r84716]
2013-06-09 16:18:38 +00:00
John Maddock
cdd63adfcd Fix assignment operations to be safe after a move.
Added test cases to catch bug case.
Refs #8667.

[SVN r84687]
2013-06-08 14:07:21 +00:00
John Maddock
eede16de82 Fix sizeof usage: fixes gcc-4.8.0 and clang failures.
[SVN r84220]
2013-05-10 12:20:22 +00:00
John Maddock
1ac5e234e0 Fix undefined behaviour.
[SVN r84107]
2013-05-02 11:50:46 +00:00
John Maddock
dd420d8d3b Add tentative support for user-defined-literals.
[SVN r84106]
2013-05-02 10:16:57 +00:00
John Maddock
a461ca170a Add lot's of enable_if's to integer only operators to restrict them to integer types (improves error messages).
Update test coverage Makesfile.
Update tests for full coverage.

[SVN r84051]
2013-04-26 08:17:12 +00:00
John Maddock
5126fa8e74 Fix float128 compile error.
Add constexpr support to float128.
Add float128 docs and rebuild HTML.

[SVN r84016]
2013-04-22 17:50:55 +00:00
John Maddock
fe005f030a Don't use C++11 only features of std::string.
[SVN r83900]
2013-04-14 15:53:05 +00:00
John Maddock
727b4c4643 Fixes to get the float128 tests passing with Intel C++ 13.0.
[SVN r83874]
2013-04-13 16:53:01 +00:00
John Maddock
74e46a3306 Initial Intel C++ _Quad support in float128.
[SVN r83856]
2013-04-12 09:01:20 +00:00
John Maddock
ba0232fb1e Fix float128 string formatting.
[SVN r83831]
2013-04-10 16:30:13 +00:00
John Maddock
04b1c9e9f0 Initial commit of 128-bit float wrapper
[SVN r83713]
2013-04-02 17:26:48 +00:00
John Maddock
ff1c93b043 Fix bug(s) that cause variable reuse in function calls to fail.
Add additional test cases.
Fixes #8326.

[SVN r83619]
2013-03-28 11:27:08 +00:00
John Maddock
b1a27b8c5c Fix valgrind errors
[SVN r83519]
2013-03-22 16:55:36 +00:00
Christopher Kormanyos
c221a74a3c Add unsigned priority mask and trivial cleanup.
[SVN r83479]
2013-03-17 19:13:24 +00:00
John Maddock
bc193d7add Fix GCC-4.6.x support which was broken in last commit. Refs #8292
[SVN r83459]
2013-03-16 12:00:01 +00:00
John Maddock
e5c96aada3 Add missing file, refs #8292
[SVN r83448]
2013-03-15 18:47:42 +00:00
John Maddock
6582c85fd8 Improve uBas integration to allow use of expression templates inside uBas templates.
Fixes #8292.

[SVN r83439]
2013-03-15 17:29:20 +00:00
Christopher Kormanyos
726b2ffc32 Proper copyright information + foundations for cpp_bin_float.
[SVN r83395]
2013-03-10 11:04:09 +00:00
John Maddock
90bebe9ab4 Include config.hpp
[SVN r83358]
2013-03-08 11:46:52 +00:00
Christopher Kormanyos
81d0ea8776 Preliminary preparations for cpp_bin_float. Moved the rebind and dynamic_array structures from cpp_dec_float.hpp to separate files in /detail.
[SVN r83335]
2013-03-06 21:26:01 +00:00
John Maddock
2a4255861e Fix operators that operate on unary-negated expressions.
Suppress some MSVC specific warnings.
Fix some bugs exposed by above changes and add new test cases.
Fixes #8176.

[SVN r83227]
2013-03-01 13:15:56 +00:00
Christopher Kormanyos
d590f8baca Remove an unreachable code block from pow2(). Add an optimization to eval_ldexp().
[SVN r83207]
2013-02-28 19:58:21 +00:00
John Maddock
bea6a2bdfc Change boolean context conversion operator so it's not convertible to void*.
Fixes #8177.

[SVN r83162]
2013-02-26 12:43:14 +00:00
John Maddock
04e971893b Better fix for #8160.
Refs #8160.

[SVN r83153]
2013-02-25 16:32:59 +00:00
John Maddock
5245fd31e2 Fix bug in division of zero.
Document and add tests.
Fixes #8160.

[SVN r83128]
2013-02-24 13:20:46 +00:00
John Maddock
1ef61ef160 Fix bug in subtraction routine that leads to -0 rather than 0.
Add test cases.
Fixes #8145.

[SVN r83103]
2013-02-23 17:22:18 +00:00
John Maddock
4a43b9ef8e Fix bug in subtraction of a limb_type.
Fix bug in division/modulus algorithms that results in incorrect sign when source and destination overlap.
Tweak performance of GCD algorithms.
Add test cases for bug reports.
Fixes #8133.
Fixes #8126.

[SVN r83080]
2013-02-22 10:37:36 +00:00
John Maddock
3111e69084 Fix sign of division in cpp_int when the values are small enough to fit in a double_limb_type.
Add test cases for above.
Fixes #8126.

[SVN r83060]
2013-02-21 13:05:41 +00:00
Christopher Kormanyos
fb748f698d Refs #8065
[SVN r82920]
2013-02-16 10:55:06 +00:00
John Maddock
869e98ac84 Fix raise_rounding_error to return the correct result (and type) when an error occurs.
Fixes #7905.

[SVN r82885]
2013-02-14 18:20:03 +00:00
John Maddock
14b230d251 Get rid of MSVC C4996 warnings.
Fixes #8036.

[SVN r82839]
2013-02-12 18:58:23 +00:00
John Maddock
1037731caa Fix cast to void
[SVN r82661]
2013-01-28 17:38:11 +00:00
John Maddock
5018162072 Reorder static assertions for better error messages.
[SVN r82610]
2013-01-25 17:45:03 +00:00
John Maddock
c5dee8ee69 Fix gcc build failures and warnings
[SVN r82604]
2013-01-25 12:49:55 +00:00
John Maddock
8ff620de3b Add debug_adaptor.hpp.
Document debug_adaptor and VC++ visualizers.

[SVN r82517]
2013-01-17 12:23:21 +00:00
John Maddock
2b901734b2 Big search and replace name change of adapter -> adaptor.
[SVN r82501]
2013-01-15 11:43:27 +00:00
John Maddock
0d4b3d4b02 Add logged adapter.
Add docs for logged_adapter and mpfi_float.

[SVN r82499]
2013-01-15 09:25:05 +00:00
John Maddock
97ba7d573f Fix bug that causes division by single limb to fail when the remainder is zero and the least significant limb of the quotient is 1.
Fixes #7878.

[SVN r82460]
2013-01-12 10:51:46 +00:00
John Maddock
42458450be Add initial support for mpfi interval arithmetic
[SVN r82337]
2013-01-03 18:58:43 +00:00