Andy Polyakov 6c01cbb6a0 modexp512-x86_64.pl: make it work with ml64. 13 anni fa
..
x86 dfeab0689f Import of old SSLeay release: SSLeay 0.9.1b (unreleased) 26 anni fa
.cvsignore 4bb61becbb Add emacs cache files to .cvsignore. 19 anni fa
README 09f4bd2a39 Very few in the "README" is up-to-date 24 anni fa
alpha-mont.pl 20735f4c81 alphacpuid.pl: fix alignment bug. 13 anni fa
armv4-gf2m.pl 87873f4328 ARM assembler pack: add platform run-time detection. 13 anni fa
armv4-mont.pl 10bd69bf4f armv4-mont.pl: profiler-assisted optimization gives 8%-14% improvement 13 anni fa
bn-586.pl 4d1f3f7a6c Update perl asm scripts include paths for perlasm. 17 anni fa
co-586.pl 4d1f3f7a6c Update perl asm scripts include paths for perlasm. 17 anni fa
ia64-mont.pl 56c5f703c1 IA-64 assembler pack: fix typos and make it work on HP-UX. 13 anni fa
ia64.S 7cfe2a5e65 Fix Intel assembler warnings. 19 anni fa
mips-mont.pl d466588788 MIPS assembler pack: enable it in Configure, add SHA2 module, fix make rules, 14 anni fa
mips.pl d466588788 MIPS assembler pack: enable it in Configure, add SHA2 module, fix make rules, 14 anni fa
mips3-mont.pl 673c55a2fe Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 17 anni fa
mips3.s 19a6e8b32c This fixes "Spurious test failures on IRIX?" reported in April. Apparently 23 anni fa
modexp512-x86_64.pl 6c01cbb6a0 modexp512-x86_64.pl: make it work with ml64. 13 anni fa
pa-risc2.s 04945fda66 pa-risc2.s was not PIC, see RT#426. I strip call to fprintf as it's 22 anni fa
pa-risc2W.s 6df3553255 A compiler warning removed. Thanks to the folks at HP! 24 anni fa
parisc-mont.pl 964ed94649 parisc-mont.pl: PA-RISC 2.0 code path optimization based on intruction- 15 anni fa
ppc-mont.pl 6715034002 PPC assembler pack: adhere closer to ABI specs, add PowerOpen traceback data. 13 anni fa
ppc.pl 6715034002 PPC assembler pack: adhere closer to ABI specs, add PowerOpen traceback data. 13 anni fa
ppc64-mont.pl 6715034002 PPC assembler pack: adhere closer to ABI specs, add PowerOpen traceback data. 13 anni fa
s390x-gf2m.pl 02a73e2bed s390x-gf2m.pl: commentary update (final performance numbers turned to be 13 anni fa
s390x-mont.pl 0ab8fd58e1 s390x assembler pack: tune-up and support for new z196 hardware. 13 anni fa
s390x.S dd128715a2 s390x.S: fix typo in bn_mul_words. 14 anni fa
sparcv8.S fccbb9b34f - performance retunes, v8plus bn_*_comba routines are reimplemented; 25 anni fa
sparcv8plus.S ae8b47f07f SPARC assembler pack: fix FIPS linking errors. 13 anni fa
sparcv9-mont.pl 673c55a2fe Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 17 anni fa
sparcv9a-mont.pl 673c55a2fe Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 17 anni fa
via-mont.pl 673c55a2fe Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 17 anni fa
vms.mar e9883d285d Finally, a bn_div_words() in VAX assembler that goes through all tests. 22 anni fa
x86-gf2m.pl 2b9a8ca15b x86gas.pl: add palignr and move pclmulqdq. 13 anni fa
x86-mont.pl 673c55a2fe Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 17 anni fa
x86.pl 65b8ca07a5 Tidy up asm stuff. 26 anni fa
x86_64-gcc.c 949c6f8ccf Stop warnings. 13 anni fa
x86_64-gf2m.pl 96abea332c x86_64-gf2m.pl: add Win64 SEH. 13 anni fa
x86_64-mont.pl 361512da0d This commit completes recent modular exponentiation optimizations on 13 anni fa
x86_64-mont5.pl e7d1363d12 x86_64-mont5.pl: add missing Win64 support. 13 anni fa

README



All assember in this directory are just version of the file
crypto/bn/bn_asm.c.

Quite a few of these files are just the assember output from gcc since on
quite a few machines they are 2 times faster than the system compiler.

For the x86, I have hand written assember because of the bad job all
compilers seem to do on it. This normally gives a 2 time speed up in the RSA
routines.

For the DEC alpha, I also hand wrote the assember (except the division which
is just the output from the C compiler pasted on the end of the file).
On the 2 alpha C compilers I had access to, it was not possible to do
64b x 64b -> 128b calculations (both long and the long long data types
were 64 bits). So the hand assember gives access to the 128 bit result and
a 2 times speedup :-).

There are 3 versions of assember for the HP PA-RISC.

pa-risc.s is the origional one which works fine and generated using gcc :-)

pa-risc2W.s and pa-risc2.s are 64 and 32-bit PA-RISC 2.0 implementations
by Chris Ruemmler from HP (with some help from the HP C compiler).