Home | History | Annotate | Download | only in info

Lines Matching full:_mp_prec

1241 `_mp_prec'
1243 aim is to produce `_mp_prec' limbs of result (the most significant
1256 `_mp_prec+1' limbs are allocated to `_mp_d', the extra limb being
1273 The `_mp_size' and `_mp_prec' fields are `int', although the
1290 The `_mp_size' count of limbs in use can be less than `_mp_prec' if
1295 `_mp_size' can also be greater than `_mp_prec'. Firstly a value is
1296 allowed to use all of the `_mp_prec+1' limbs available at `_mp_d',
1297 and secondly when `mpf_set_prec_raw' lowers `_mp_prec' it leaves
1299 `_mp_prec'.
1302 All rounding is done on limb boundaries. Calculating `_mp_prec'
1321 Use of `_mp_prec+1' Limbs
1322 The extra limb on `_mp_d' (`_mp_prec+1' rather than just
1323 `_mp_prec') helps when an `mpf' routine might get a carry from its
1325 `_mp_prec' limbs. If there's no carry then that's the result, but
1327 `_mp_size' becomes `_mp_prec+1'.
1329 Whenever `_mp_prec+1' limbs are held in a variable, the low limb
1330 is not needed for the intended precision, only the `_mp_prec' high
1333 limbs they need, and this will be `_mp_prec' if their target has
1338 Copy functions like `mpf_set' will retain a full `_mp_prec+1' limbs
1340 equal to `_mp_prec+1' will get its full exact value copied.
1341 Strictly speaking this is unnecessary since only `_mp_prec' limbs
1348 to an `_mp_prec'. The value in bits is rounded up to a whole limb
1353 extra limb from `_mp_prec' before converting to bits. The net
1361 high being only non-zero, giving an `_mp_prec' of 9. `_mp_d' then
1363 take `_mp_prec' subtract 1 limb and multiply by 32, giving 256