Re: mpn_mul_fft type overflow issue

2013-09-25 Thread Mark Sofroniou
Hi Torbjorn. I appreciate your comments and the patch you sent. I'll be sure to use your head branch as a starting point in the future - sorry about that I'm still learning about your development workflow so thanks for your patience. Attached is a new patch that has been retested. Here is a

Re: mpn_mul_fft type overflow issue

2013-09-23 Thread Mark Sofroniou
Attached is a revised patch for mul_fft. I have tested it to confirm that both mpn_mul and mpn_tdiv_qr now work with numbers of size 2^32 limbs. Regards, Mark diff -r 266c28da4680 mpn/generic/mul_fft.c --- a/mpn/generic/mul_fft.c Wed Jul 17 17:42:56 2013 +0200 +++ b/mpn/generic/mul_fft.c

Re: mpn_mul_fft type overflow issue

2013-09-20 Thread Mark Sofroniou
I've cleaned this up some more. I'll send you the new patch in a few days once I have fully tested it. I'll also add an mpn_tdiv_qr inverse test to check large multiplications - it should at least be a basic check for type overflow in that code. On 09/18/2013 01:15 PM, Torbjorn Granlund

mpn_mul_fft type overflow issue

2013-09-18 Thread Mark Sofroniou
Hello GMP developers. I wasn't quite sure if this message should be sent to gmp-bugs or to gmp-devel. Since this isn't the first issue due to types of internal variables (e.g. http://gmplib.org/list-archives/gmp-bugs/2009-July/001538.html) I thought it might deserve some discussion. Apologies if

Re: mpn_mul_fft type overflow issue

2013-09-18 Thread Mark Sofroniou
On 09/18/2013 05:27 AM, Torbjorn Granlund wrote: Hello Mark! I cannot say that we were unaware of these type probems in mul_fft.c. Since I have no machine where to test changes, I have postponed fixing these problems. I am glad you have had a chance to clean this up. Hi Torbjorn, thanks for

Re: mpn_mul_fft type overflow issue

2013-09-18 Thread Torbjorn Granlund
Mark Sofroniou ma...@wolfram.com writes: Thanks. I wasn't completely sure what the right type was in all cases. Most of the changes are to use mp_size_t instead of int - these are the important ones. There are a couple (related to the variables K2 and K3) that change unsigned int to