xref: /onnv-gate/usr/src/common/openssl/crypto/bn/asm/README (revision 0:68f95e015346)
1*0Sstevel@tonic-gate<OBSOLETE>
2*0Sstevel@tonic-gate
3*0Sstevel@tonic-gateAll assember in this directory are just version of the file
4*0Sstevel@tonic-gatecrypto/bn/bn_asm.c.
5*0Sstevel@tonic-gate
6*0Sstevel@tonic-gateQuite a few of these files are just the assember output from gcc since on
7*0Sstevel@tonic-gatequite a few machines they are 2 times faster than the system compiler.
8*0Sstevel@tonic-gate
9*0Sstevel@tonic-gateFor the x86, I have hand written assember because of the bad job all
10*0Sstevel@tonic-gatecompilers seem to do on it.  This normally gives a 2 time speed up in the RSA
11*0Sstevel@tonic-gateroutines.
12*0Sstevel@tonic-gate
13*0Sstevel@tonic-gateFor the DEC alpha, I also hand wrote the assember (except the division which
14*0Sstevel@tonic-gateis just the output from the C compiler pasted on the end of the file).
15*0Sstevel@tonic-gateOn the 2 alpha C compilers I had access to, it was not possible to do
16*0Sstevel@tonic-gate64b x 64b -> 128b calculations (both long and the long long data types
17*0Sstevel@tonic-gatewere 64 bits).  So the hand assember gives access to the 128 bit result and
18*0Sstevel@tonic-gatea 2 times speedup :-).
19*0Sstevel@tonic-gate
20*0Sstevel@tonic-gateThere are 3 versions of assember for the HP PA-RISC.
21*0Sstevel@tonic-gate
22*0Sstevel@tonic-gatepa-risc.s is the origional one which works fine and generated using gcc :-)
23*0Sstevel@tonic-gate
24*0Sstevel@tonic-gatepa-risc2W.s and pa-risc2.s are 64 and 32-bit PA-RISC 2.0 implementations
25*0Sstevel@tonic-gateby Chris Ruemmler from HP (with some help from the HP C compiler).
26*0Sstevel@tonic-gate
27*0Sstevel@tonic-gate</OBSOLETE>
28