openssl/crypto/bn/asm
Andy Polyakov 0b4bb91db6 Add RSAZ assembly modules.
RT: 2582, 2850
2013-07-05 21:30:18 +02:00
..
x86
.cvsignore
alpha-mont.pl alphacpuid.pl: fix alignment bug. 2011-08-12 12:28:52 +00:00
armv4-gf2m.pl armv4cpuid.S, armv4-gf2m.pl: make newest code compilable by older assembler. 2011-11-05 13:07:18 +00:00
armv4-mont.pl armv4-mont.pl: profiler-assisted optimization gives 8%-14% improvement 2011-08-13 12:38:41 +00:00
bn-586.pl Update perl asm scripts include paths for perlasm. 2008-01-05 22:28:38 +00:00
bn-c64xplus.asm C64x+ assembly pack: improve EABI support. 2012-11-28 13:19:10 +00:00
c64xplus-gf2m.pl C64x+ assembly pack: improve EABI support. 2012-11-28 13:19:10 +00:00
co-586.pl Update perl asm scripts include paths for perlasm. 2008-01-05 22:28:38 +00:00
ia64-mont.pl IA-64 assembler pack: fix typos and make it work on HP-UX. 2011-05-07 20:36:05 +00:00
ia64.S Fix Intel assembler warnings. 2005-08-10 08:28:36 +00:00
mips-mont.pl MIPS assembly pack: assign default value to $flavour. 2012-08-17 09:10:31 +00:00
mips.pl bn/asm/mips.pl: hardwire local call to bn_div_words. 2013-01-22 21:13:37 +01:00
modexp512-x86_64.pl x86_64 assembly pack: make Windows build more robust. 2013-01-22 22:27:28 +01:00
pa-risc2.s
pa-risc2W.s
parisc-mont.pl PA-RISC assembler pack: switch to bve in 64-bit builds. 2013-06-18 10:37:00 +02:00
ppc-mont.pl PPC assembler pack: adhere closer to ABI specs, add PowerOpen traceback data. 2011-05-27 13:32:34 +00:00
ppc.pl ppc.pl: fix bug in bn_mul_comba4. 2011-11-05 10:16:04 +00:00
ppc64-mont.pl PPC assembler pack: adhere closer to ABI specs, add PowerOpen traceback data. 2011-05-27 13:32:34 +00:00
README
rsaz-avx2.pl Add RSAZ assembly modules. 2013-07-05 21:30:18 +02:00
rsaz-x86_64.pl Add RSAZ assembly modules. 2013-07-05 21:30:18 +02:00
s390x-gf2m.pl s390x-gf2m.pl: commentary update (final performance numbers turned to be 2011-07-04 11:20:33 +00:00
s390x-mont.pl s390x assembler pack: tune-up and support for new z196 hardware. 2011-03-04 13:09:16 +00:00
s390x.S s390x.S: fix typo in bn_mul_words. 2010-11-22 21:55:07 +00:00
sparct4-mont.pl Optimize SPARC T4 MONTMUL support. 2013-06-18 10:39:38 +02:00
sparcv8.S
sparcv8plus.S SPARC assembler pack: fix FIPS linking errors. 2011-08-12 21:38:19 +00:00
sparcv9-gf2m.pl SPARCv9 assembly pack: harmonize ABI handling (so that it's handled in one 2012-10-25 12:07:32 +00:00
sparcv9-mont.pl Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 2007-06-29 13:10:19 +00:00
sparcv9a-mont.pl Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 2007-06-29 13:10:19 +00:00
via-mont.pl Latest bn_mont.c modification broke ECDSA test. I've got math wrong, which 2007-06-29 13:10:19 +00:00
vis3-mont.pl Add VIS3 Montgomery multiplication. 2012-10-20 09:13:21 +00:00
vms.mar
x86-gf2m.pl x86gas.pl: add palignr and move pclmulqdq. 2011-05-16 18:07:00 +00:00
x86-mont.pl x86-mont.pl: fix bug in integer-only squaring path. 2011-12-09 14:21:25 +00:00
x86.pl
x86_64-gcc.c Add volatile qualifications to two blocks of inline asm to stop GCC from 2013-06-04 18:46:25 +01:00
x86_64-gf2m.pl x86_64-gf2m.pl: fix typo. 2013-03-01 22:36:36 +01:00
x86_64-mont.pl bn/asm/x86_86-mont.pl: optimize reduction for Intel Core family. 2013-07-05 21:10:56 +02:00
x86_64-mont5.pl x86_64 assembly pack: keep making Windows build more robust. 2013-02-02 19:54:59 +01:00

<OBSOLETE>

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).

</OBSOLETE>