1 /* Run the C pre-processor over this file with one of the following defined
2 * ELF - elf object files,
3 * OUT - a.out object files,
4 * BSDI - BSDI style a.out object files
5 * SOL - Solaris style elf
8 #define TYPE(a,b) .type a,b
9 #define SIZE(a,b) .size a,b
11 #if defined(OUT) || defined(BSDI)
12 #define bn_mul_add_words _bn_mul_add_words
13 #define bn_mul_words _bn_mul_words
14 #define bn_sqr_words _bn_sqr_words
15 #define bn_div_words _bn_div_words
16 #define bn_add_words _bn_add_words
17 #define bn_sub_words _bn_sub_words
18 #define bn_mul_comba8 _bn_mul_comba8
19 #define bn_mul_comba4 _bn_mul_comba4
20 #define bn_sqr_comba8 _bn_sqr_comba8
21 #define bn_sqr_comba4 _bn_sqr_comba4
39 #if defined(ELF) || defined(SOL)
45 You need to define one of
46 ELF
- elf systems
- linux
-elf
, NetBSD
and DG
-UX
47 OUT
- a
.out systems
- linux
-a
.out
and FreeBSD
48 SOL
- solaris systems
, which are elf with strange comment lines
49 BSDI
- a
.out with a very primative version of as
.
52 /* Let the Assembler begin :-) */
53 /* Don't even think of reading this code */
54 /* It was automatically generated by bn-586.pl */
55 /* Which is a perl program used to generate the x86 assember for */
56 /* any of elf, a.out, BSDI,Win32, or Solaris */
57 /* eric <eay@cryptsoft.com> */
64 .globl bn_mul_add_words
65 TYPE(bn_mul_add_words
,@function
)
77 andl $
4294967288, %ecx
266 .bn_mul_add_words_end
:
267 SIZE(bn_mul_add_words
,.bn_mul_add_words_end
-bn_mul_add_words
)
268 .ident
"bn_mul_add_words"
272 TYPE(bn_mul_words
,@function
)
285 andl $
4294967288, %ebp
426 SIZE(bn_mul_words
,.bn_mul_words_end
-bn_mul_words
)
427 .ident
"bn_mul_words"
431 TYPE(bn_sqr_words
,@function
)
442 andl $
4294967288, %ebx
548 SIZE(bn_sqr_words
,.bn_sqr_words_end
-bn_sqr_words
)
549 .ident
"bn_sqr_words"
553 TYPE(bn_div_words
,@function
)
570 SIZE(bn_div_words
,.bn_div_words_end
-bn_div_words
)
571 .ident
"bn_div_words"
575 TYPE(bn_add_words
,@function
)
588 andl $
4294967288, %ebp
755 SIZE(bn_add_words
,.bn_add_words_end
-bn_add_words
)
756 .ident
"bn_add_words"
760 TYPE(bn_sub_words
,@function
)
773 andl $
4294967288, %ebp
940 SIZE(bn_sub_words
,.bn_sub_words_end
-bn_sub_words
)
941 .ident
"bn_sub_words"
945 TYPE(bn_mul_comba8
,@function
)
957 /* ################## Calculate word 0 */
969 /* ################## Calculate word 1 */
988 /* ################## Calculate word 2 */
1014 /* ################## Calculate word 3 */
1047 /* ################## Calculate word 4 */
1087 /* ################## Calculate word 5 */
1134 /* ################## Calculate word 6 */
1188 /* ################## Calculate word 7 */
1249 /* ################## Calculate word 8 */
1303 /* ################## Calculate word 9 */
1350 /* ################## Calculate word 10 */
1390 /* ################## Calculate word 11 */
1423 /* ################## Calculate word 12 */
1449 /* ################## Calculate word 13 */
1468 /* ################## Calculate word 14 */
1486 SIZE(bn_mul_comba8
,.bn_mul_comba8_end
-bn_mul_comba8
)
1490 .globl bn_mul_comba4
1491 TYPE(bn_mul_comba4
,@function
)
1503 /* ################## Calculate word 0 */
1515 /* ################## Calculate word 1 */
1534 /* ################## Calculate word 2 */
1560 /* ################## Calculate word 3 */
1593 /* ################## Calculate word 4 */
1619 /* ################## Calculate word 5 */
1638 /* ################## Calculate word 6 */
1656 SIZE(bn_mul_comba4
,.bn_mul_comba4_end
-bn_mul_comba4
)
1660 .globl bn_sqr_comba8
1661 TYPE(bn_sqr_comba8
,@function
)
1672 /* ############### Calculate word 0 */
1683 /* ############### Calculate word 1 */
1697 /* ############### Calculate word 2 */
1717 /* ############### Calculate word 3 */
1741 /* ############### Calculate word 4 */
1771 /* ############### Calculate word 5 */
1805 /* ############### Calculate word 6 */
1845 /* ############### Calculate word 7 */
1889 /* ############### Calculate word 8 */
1929 /* ############### Calculate word 9 */
1963 /* ############### Calculate word 10 */
1993 /* ############### Calculate word 11 */
2017 /* ############### Calculate word 12 */
2037 /* ############### Calculate word 13 */
2050 /* ############### Calculate word 14 */
2066 SIZE(bn_sqr_comba8
,.bn_sqr_comba8_end
-bn_sqr_comba8
)
2070 .globl bn_sqr_comba4
2071 TYPE(bn_sqr_comba4
,@function
)
2082 /* ############### Calculate word 0 */
2093 /* ############### Calculate word 1 */
2107 /* ############### Calculate word 2 */
2127 /* ############### Calculate word 3 */
2151 /* ############### Calculate word 4 */
2171 /* ############### Calculate word 5 */
2184 /* ############### Calculate word 6 */
2200 SIZE(bn_sqr_comba4
,.bn_sqr_comba4_end
-bn_sqr_comba4
)