gmp-4.1.2 assertion failure

Jason jasonmoxham at btclick.com
Sun Feb 15 14:08:00 CET 2004


On Saturday 14 Feb 2004 10:42 pm, Kevin Ryde wrote:
> Jason <jasonmoxham at btclick.com> writes:
> >     umul_ppmm (t3, t4, bsize, e);
> >     umul_ppmm (t5, t6, cnt - GMP_NAIL_BITS, e);
>
> Yep, that'll be the idea.
>
> >     t2 = GMP_NUMB_BITS;
> >     ...
> >     udiv_qrnnd (t8, t1, t5, t6, t2);
>
> No, in the normal case where GMP_NUMB_BITS is a power of 2 it should
> be shifts, not udiv_qrnnd.  Could hide a 2-limb by numb_bits division
> in a macro to avoid junking up the code with conditionals.
>
> > #define MAX_USEFULL_MP_SIZE_T_MAX	(MP_SIZE_T_MAX/BYTES_PER_MP_LIMB)
>
> That has to look at SIZE_T_MAX too, since size_t is what we pass to
> the alloc functions.
>
> I'm not sure what we can say about the relative sizes of mp_size_t and
> size_t.  Probably mp_size_t >= size_t normally, but on cray where
> mp_size_t is an int maybe that's not so.
>
>
> Incidentally, when mp_limb_t is a longlong bigger than ulong, the
> current simple expression can probably be retained, if we felt like
> checking that.

patch attached , although I not sure that my definintion of SIZE_T_MAX is 
safe ?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch
Type: text/x-diff
Size: 2597 bytes
Desc: not available
Url : /list-archives/gmp-bugs/attachments/20040215/36553215/patch.bin


More information about the gmp-bugs mailing list