mirror of
https://github.com/boostorg/multiprecision.git
synced 2026-02-19 14:32:35 +00:00
Fix exact sqrt's.
[SVN r85255]
This commit is contained in:
@@ -1149,6 +1149,8 @@ void eval_integer_sqrt(B& s, B& r, const B& x)
|
||||
eval_bit_set(t, 2 * g);
|
||||
eval_subtract(r, x, t);
|
||||
--g;
|
||||
if(eval_get_sign(r) == 0)
|
||||
return;
|
||||
int msbr = eval_msb(r);
|
||||
do
|
||||
{
|
||||
@@ -1161,6 +1163,8 @@ void eval_integer_sqrt(B& s, B& r, const B& x)
|
||||
{
|
||||
eval_bit_set(s, g);
|
||||
eval_subtract(r, t);
|
||||
if(eval_get_sign(r) == 0)
|
||||
return;
|
||||
msbr = eval_msb(r);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user