wbhart
61d7ae5b73
Fixed all the bugs I just implemented.
2009-07-23 02:10:46 +00:00
wbhart
5d3cf5509d
First hack at toom4_mul (unbalanced toom4).
2009-07-23 01:31:29 +00:00
wbhart
87f1f58e90
Saved an unnecessary copy in lehmer gcd and fiddled with some parameters
...
in gcdext which sped it up slightly.
2009-07-22 04:26:36 +00:00
wbhart
d5e7b36cb0
Added strassen multiplication and increased the gcd test sizes so that
...
it actually gets used a few more times.
2009-07-22 00:44:05 +00:00
wbhart
899a1df461
Slight speedup by allowing tdiv_qr to alias and reduction of memory
...
usage in gcdext.
2009-07-20 14:35:31 +00:00
wbhart
bd57ca8fa6
Made some minor improvements to gcdext.c.
2009-07-20 12:59:25 +00:00
wbhart
23f24f3a23
Implemented Lehmer nxgcd and turned it on.
2009-07-20 06:27:34 +00:00
wbhart
aceee52323
Improved the mpn_gcdinv_1 function for speed.
2009-07-20 01:24:21 +00:00
wbhart
8347f89d14
Added mpn_gcdinv_1 and turned on MPN_ZERO and mpn_store assembly code in
...
FFT.
2009-07-19 23:08:09 +00:00
wbhart
f2e91a0543
Switched on lgcd for small gcd computations.
2009-07-19 19:11:40 +00:00
wbhart
342fb36ced
Cleaned up some of the comments in gcdext to do with the "cofactors" u0 and u1.
2009-07-19 17:43:15 +00:00
wbhart
fc6f037682
Added reference to the FFT paper of Gaudy, Kruppa and Zimmermann.
2009-06-06 18:17:53 +00:00
wbhart
4e3ab104c2
Updated all version number, author, changelog info etc, for new release,
...
and added my copyright to the new FFT code I modified.
2009-05-31 20:17:12 +00:00
jasonmoxham
ebee2bc09d
int to mp_size_t fix
2009-05-31 11:55:57 +00:00
jasonmoxham
3a5ca8e73a
int to mp_size_t fix
2009-05-31 11:54:46 +00:00
wbhart
ca73396faa
Added workaround for gcc 4.1.2 on ia64 in toom4 and toom4 squaring code.
2009-05-30 10:03:10 +00:00
wbhart
0d90e4faa8
Fixed a bug in FFT squaring code.
2009-05-27 15:58:27 +00:00
wbhart
c605f1e498
Removed some compiler warnings for MSVC from mul_fft.c.
2009-05-27 13:00:01 +00:00
jasonmoxham
5e1c28e1df
divrem_2 generic correction
2009-05-20 17:34:55 +00:00
jasonmoxham
01da1f0caa
divrem update
2009-05-19 12:48:09 +00:00
jasonmoxham
483fe4ed21
divrem updates
2009-05-19 12:27:10 +00:00
jasonmoxham
b5980c95b1
divrem bits
2009-05-19 09:51:30 +00:00
gladman
0af849c1f2
1. Fix minor bug in Windows build
...
2. change gcdext.c to avoid C99 features
2009-05-19 09:44:06 +00:00
jasonmoxham
9c68614d77
Add new function generic mpn_divrem_euclidean_qr_2
2009-05-19 09:30:34 +00:00
wbhart
3d66bd5322
Added tuning values for core2 and fixed a minor bug in mul_n.c.
2009-05-19 04:03:49 +00:00
wbhart
d96ef5e5d9
Reverted a change which slows things down on k8.
2009-05-19 02:04:09 +00:00
wbhart
e330cc79bc
Fixed some bugs related to tuning gcdext and added tuning for toom4 and
...
toom7 squaring code.
2009-05-19 00:57:17 +00:00
wbhart
cfb5f9c0b2
Added copyright notice.
2009-05-18 21:00:51 +00:00
wbhart
2bf28e3c63
Added toom7 squaring and sped up multiplication slightly by better use
...
of the FFT.
2009-05-18 20:55:01 +00:00
wbhart
de64002818
Slight memory usage improvement for toom4 squaring code.
2009-05-18 07:28:48 +00:00
wbhart
8d8a26e60b
Added toom4 squaring code - no tuning code yet!
2009-05-18 07:13:00 +00:00
wbhart
6b1c6afdbe
Added half gcd implementation based on the original ngcd implementation
...
of Niels Mohler.
2009-05-16 21:57:44 +00:00
jasonmoxham
3b7c555c8e
New generic functions/macros mpn_lshift2 mpn_rshift2 and tests/speed etc
2009-05-14 02:44:19 +00:00
gladman
d6962d575f
1. Add new/changed Core2 assembler files to the Windows build
...
2. Workaround VC++ optimisation bug in mul_fft.c
2009-05-13 09:54:24 +00:00
wbhart
21f51a706c
Added toom32 for unbalanced multiplications.
2009-05-12 18:28:20 +00:00
wbhart
c6881fa3a9
Fixed bugs in Toom3 code.
2009-05-12 09:22:27 +00:00
wbhart
fb914ab4ac
Fixed some buglets in toom4.
2009-05-11 15:16:53 +00:00
wbhart
ae48f90e2f
Fix speed regression in mul.c, switch unbalanced toom back on. Add
...
missing toom3_interpolate prototype.
2009-05-11 12:30:17 +00:00
wbhart
4babcebbfa
Turned off unbalanced multiplications as they slow things down.
...
-This line, and those below, will be ignored--
M mpn/generic/mul.c
2009-05-11 11:06:38 +00:00
wbhart
9e56c61071
Added toom42 and code to handle unbalanced multiplication.
2009-05-11 10:09:09 +00:00
wbhart
1b58a8b49e
Speed toom4 up by passing some arguments to the interpolate code in the
...
output space so they don't have to be moved at the end.
2009-05-10 13:45:27 +00:00
wbhart
4f99bbe9fc
Added missing toom3 file.
2009-05-10 07:15:02 +00:00
wbhart
9c79e0a98b
Factored out mpn_toom3_sqr_n and mpn_toom3_mul_n and removed duplication
...
of mpn_toom3_interpolate. Rewrote mpn_toom3_sqr_n.
2009-05-10 07:12:38 +00:00
wbhart
c8aa69c789
Added toom3_mul_n with better memory usage.
2009-05-10 04:24:39 +00:00
wbhart
1cc8b35cfe
Another slight speedup.
2009-05-09 21:51:40 +00:00
wbhart
96e8e4e410
Added my copyright info.
2009-05-09 21:38:06 +00:00
wbhart
6ed1dd6474
Whoops I screwed up toom4 and toom7, putting them back now.
2009-05-09 21:23:15 +00:00
wbhart
7a0e036d36
Fixed toom4 and toom7 issues and added k8 tuning code.
2009-05-09 21:12:13 +00:00
wbhart
72f93a085c
Added new toom3 code.
2009-05-09 20:56:34 +00:00
gladman
d942415a1c
1. Update Windows Powershell scripts in mpirbench to refer to MPIR rather than GMP
...
2. Update MPIR version number in Windows config files to 1.1.2
3. Add an MSVC inline definition in in gmp-h.in
4. Correct locale test (as per GMP correction)
5. Add Windows x64 set/copy intrinsics to mul_fft.c (improves FFT speed score by 2%)
2009-05-09 13:26:27 +00:00
wbhart
0ba06242c6
Fixed some bugs in best_k code used by FFT.
2009-05-09 02:54:08 +00:00
wbhart
911916ce7e
Fixed a carry issue with tc*_addmul which created a requirement for extra memory in toom code.
2009-05-08 14:12:47 +00:00
wbhart
5624d9a6fc
New toom4 and toom7 code.
...
* Don't make copies before basecase multiplications
* Factor out interpolation code
* Convert interpolation code to twos complement
* Optimise code using new assembly functions where available
2009-05-08 13:21:14 +00:00
wbhart
2ad5066cea
Tried to clean up a little.
2009-05-05 23:52:02 +00:00
wbhart
49441a5e20
Fixed bug in mul_fft.c
2009-05-05 22:18:16 +00:00
gladman
eeaca671af
Remove C99 features in mul_fft.c
2009-05-05 20:41:29 +00:00
wbhart
041df82e0d
Added Zimmermann et al's FFT (after making a bug fix).
2009-05-05 12:27:29 +00:00
wbhart
fd32e5fb9c
Credit Bodrato in the way he requested.
2009-04-15 22:03:24 +00:00
wbhart
79141ad994
Removed some broken asserts from toom code.
2009-04-15 00:48:33 +00:00
jasonmoxham
255c8c255c
assertion correction in divrem_euclidean
2009-04-14 17:52:38 +00:00
gladman
19faf1830c
Update Windows build for latest code
2009-04-14 16:39:30 +00:00
jasonmoxham
f32b00d850
div update
2009-04-13 22:50:46 +00:00
wbhart
577614e228
Fixed mpbsd and got rid of mocked up mpz version of tc4_divexact_ui and
...
tc7_divexact_ui.
2009-04-11 11:36:35 +00:00
jasonmoxham
044eb665ec
removed divrem_hensel_1 , save it for a rainy day :)
2009-04-11 04:08:14 +00:00
gladman
9f4a1b86a2
Revised TOOM4 and TOOM7 thresholds
...
Revised AMD tuning for Windows
2009-04-04 09:05:12 +00:00
wbhart
ce0262b9e3
Added commented out Toom 7 sequence (hand generated).
2009-04-04 01:58:04 +00:00
wbhart
11743b7468
Set library mode 1 in toom 7 file.
2009-04-02 07:48:32 +00:00
wbhart
22db24db76
Attempt to add toom cook 7.
2009-04-02 07:38:03 +00:00
wbhart
e5641d6da1
Used mpn_divexact_byBm1of for division by 15.
2009-04-02 00:07:22 +00:00
wbhart
4ee5c1dd22
Moved toom internal cutoff into gmp-impl.h.
2009-04-01 23:23:38 +00:00
wbhart
d328fb3368
Tried to fix a tuning issue with toom 4.
2009-04-01 20:16:35 +00:00
gladman
34efd8413b
1. Add Windows code for latest trunk revisions
...
2. Make changes for non C99 compilers (like VC++)
2009-04-01 14:58:15 +00:00
wbhart
e42709e967
Added toom4 multiplication.
2009-04-01 08:21:03 +00:00
jasonmoxham
8ca3be5bef
merge div-branch into trunk with svn merge -r 1782:1816 ../branches/x86_64-division/ run on my local trunk
2009-03-31 23:56:06 +00:00
jasonmoxham
43160f61a6
added include longlong to diveby3.c
2009-02-20 00:47:24 +00:00
jasonmoxham
deb06ea4ed
merged k8-branch into trunk , autotools , few handbits , windows bits just copyed over
2009-02-19 23:22:30 +00:00
jasonmoxham
e554550755
for file in $(find -name \*.c ) ; do sed -e "s/#include \"gmp\.h\"/#include \"mpir.h\"/g" $file > temp ; mv temp $file ; done
...
for file in $(find -name \*.h ) ; do sed -e "s/#include \"gmp\.h\"/#include \"mpir.h\"/g" $file > temp ; mv temp $file ; done
for file in $(find -name \*.cc) ; do sed -e "s/#include \"gmp\.h\"/#include \"mpir.h\"/g" $file > temp ; mv temp $file ; done
2009-02-12 10:24:24 +00:00
martinjw
caef36dc44
Fixed several problems with Moller gcd patches
2008-12-28 19:03:41 +00:00
jasonmartin
4b2966287f
Incorporated Niels Mollers lgpl 2.1 gcd code into trunk
2008-10-11 06:56:15 +00:00
wbhart
c7caca6d56
Set native line endings for all .c, .h, as, .asm, .s, .in, .m4, .cc, am
2008-06-25 07:33:36 +00:00
brgladman
f6ef7209a4
Apply GMP 4.2.1 patches to MPIR
2008-05-19 16:03:48 +00:00
wbhart
a197a2d3eb
Basic GMP files with a new core2 directory and amd_64 directory with Martin's and Gaudry's patches.
...
Removed directories for no longer supported architectures.
2008-04-17 21:03:07 +00:00