Staging
v0.5.1
https://github.com/python/cpython
Revision 0973b99e1cfe13b3d197e1b6c449a2d75b55d17a authored by Tim Peters on 29 August 2004, 22:16:50 UTC, committed by Tim Peters on 29 August 2004, 22:16:50 UTC
This checkin is adapted from part 1 (of 3) of Trevor Perrin's patch set.

x_mul()
  - sped a little by optimizing the C
  - sped a lot (~2X) if it's doing a square; note that long_pow() squares
    often
k_mul()
  - more cache-friendly now if it's doing a square
KARATSUBA_CUTOFF
  - boosted; gradeschool mult is quicker now, and it may have been too low
    for many platforms anyway
KARATSUBA_SQUARE_CUTOFF
  - new
  - since x_mul is a lot faster at squaring now, the point at which
    Karatsuba pays for squaring is much higher than for general mult
1 parent afb5f94
History
Tip revision: 0973b99e1cfe13b3d197e1b6c449a2d75b55d17a authored by Tim Peters on 29 August 2004, 22:16:50 UTC
SF patch 936813: fast modular exponentiation
Tip revision: 0973b99
File Mode Size
.cvsignore -rw-r--r-- 17 bytes
atof.c -rw-r--r-- 815 bytes
bltinmodule.c -rw-r--r-- 57.7 KB
ceval.c -rw-r--r-- 102.5 KB
codecs.c -rw-r--r-- 19.4 KB
compile.c -rw-r--r-- 148.8 KB
dup2.c -rw-r--r-- 685 bytes
dynload_aix.c -rw-r--r-- 4.9 KB
dynload_atheos.c -rw-r--r-- 1.0 KB
dynload_beos.c -rw-r--r-- 6.3 KB
dynload_dl.c -rw-r--r-- 561 bytes
dynload_hpux.c -rw-r--r-- 1.3 KB
dynload_next.c -rw-r--r-- 3.4 KB
dynload_os2.c -rw-r--r-- 1020 bytes
dynload_shlib.c -rw-r--r-- 3.1 KB
dynload_stub.c -rw-r--r-- 202 bytes
dynload_win.c -rw-r--r-- 7.3 KB
errors.c -rw-r--r-- 17.8 KB
exceptions.c -rw-r--r-- 45.7 KB
fmod.c -rw-r--r-- 435 bytes
frozen.c -rw-r--r-- 1.2 KB
frozenmain.c -rw-r--r-- 1.3 KB
future.c -rw-r--r-- 6.0 KB
getargs.c -rw-r--r-- 36.9 KB
getcompiler.c -rw-r--r-- 366 bytes
getcopyright.c -rw-r--r-- 503 bytes
getcwd.c -rw-r--r-- 1.3 KB
getmtime.c -rw-r--r-- 318 bytes
getopt.c -rw-r--r-- 2.3 KB
getplatform.c -rw-r--r-- 130 bytes
getversion.c -rw-r--r-- 290 bytes
graminit.c -rw-r--r-- 33.0 KB
hypot.c -rw-r--r-- 282 bytes
import.c -rw-r--r-- 69.2 KB
importdl.c -rw-r--r-- 2.0 KB
importdl.h -rw-r--r-- 990 bytes
mactoolboxglue.c -rw-r--r-- 16.2 KB
marshal.c -rw-r--r-- 19.8 KB
memmove.c -rw-r--r-- 439 bytes
modsupport.c -rw-r--r-- 11.5 KB
mysnprintf.c -rw-r--r-- 2.6 KB
mystrtoul.c -rw-r--r-- 3.1 KB
pyfpe.c -rw-r--r-- 623 bytes
pystate.c -rw-r--r-- 12.0 KB
pystrtod.c -rw-r--r-- 5.9 KB
pythonrun.c -rw-r--r-- 40.6 KB
sigcheck.c -rw-r--r-- 529 bytes
strdup.c -rw-r--r-- 256 bytes
strerror.c -rw-r--r-- 416 bytes
strtod.c -rw-r--r-- 5.1 KB
structmember.c -rw-r--r-- 5.1 KB
symtable.c -rw-r--r-- 4.5 KB
sysmodule.c -rw-r--r-- 34.4 KB
thread.c -rw-r--r-- 4.3 KB
thread_atheos.h -rw-r--r-- 6.0 KB
thread_beos.h -rw-r--r-- 6.0 KB
thread_cthread.h -rw-r--r-- 2.7 KB
thread_foobar.h -rw-r--r-- 1.9 KB
thread_lwp.h -rw-r--r-- 3.1 KB
thread_nt.h -rw-r--r-- 8.0 KB
thread_os2.h -rw-r--r-- 4.9 KB
thread_pth.h -rw-r--r-- 5.2 KB
thread_pthread.h -rw-r--r-- 9.9 KB
thread_sgi.h -rw-r--r-- 9.4 KB
thread_solaris.h -rw-r--r-- 3.0 KB
thread_wince.h -rw-r--r-- 4.0 KB
traceback.c -rw-r--r-- 6.2 KB

back to top