Tidy up asm stuff.
authorBen Laurie <ben@openssl.org>
Fri, 12 Feb 1999 19:05:10 +0000 (19:05 +0000)
committerBen Laurie <ben@openssl.org>
Fri, 12 Feb 1999 19:05:10 +0000 (19:05 +0000)
17 files changed:
crypto/bn/Makefile.ssl
crypto/bn/asm/bn-586.pl
crypto/bn/asm/bn86unix.cpp [deleted file]
crypto/bn/asm/ca.pl
crypto/bn/asm/co-586.pl
crypto/bn/asm/co-alpha.pl
crypto/bn/asm/co86unix.cpp [deleted file]
crypto/bn/asm/elf.s [deleted file]
crypto/bn/asm/f [deleted file]
crypto/bn/asm/f.c [deleted file]
crypto/bn/asm/f.elf [deleted file]
crypto/bn/asm/f.s [deleted file]
crypto/bn/asm/ff [deleted file]
crypto/bn/asm/x86.pl
crypto/bn/asm/x86nt32.uu [deleted file]
crypto/bn/asm/x86w16.uu [deleted file]
crypto/bn/asm/x86w32.uu [deleted file]

index 65560fd..7870a94 100644 (file)
@@ -92,10 +92,10 @@ asm/bn86bsdi.o: asm/bn86unix.cpp
 asm/co86bsdi.o: asm/co86unix.cpp
        $(CPP) -DBSDI asm/co86unix.cpp | sed 's/ :/:/' | as -o asm/co86bsdi.o
 
-asm/bn86unix.cpp:
+asm/bn86unix.cpp: asm/bn-586.pl
        (cd asm; perl bn-586.pl cpp >bn86unix.cpp )
 
-asm/co86unix.cpp:
+asm/co86unix.cpp: asm/co-586.pl
        (cd asm; perl co-586.pl cpp >co86unix.cpp )
 
 # MIPS 64 bit assember 
index 7a03c67..5191bed 100644 (file)
@@ -3,7 +3,7 @@
 push(@INC,"perlasm","../../perlasm");
 require "x86asm.pl";
 
-&asm_init($ARGV[0],"bn-586.pl");
+&asm_init($ARGV[0],$0);
 
 &bn_mul_add_words("bn_mul_add_words");
 &bn_mul_words("bn_mul_words");
diff --git a/crypto/bn/asm/bn86unix.cpp b/crypto/bn/asm/bn86unix.cpp
deleted file mode 100644 (file)
index 639a3ac..0000000
+++ /dev/null
@@ -1,2201 +0,0 @@
-/* Run the C pre-processor over this file with one of the following defined
- * ELF - elf object files,
- * OUT - a.out object files,
- * BSDI - BSDI style a.out object files
- * SOL - Solaris style elf
- */
-
-#define TYPE(a,b)       .type   a,b
-#define SIZE(a,b)       .size   a,b
-
-#if defined(OUT) || defined(BSDI)
-#define bn_mul_add_words _bn_mul_add_words
-#define bn_mul_words _bn_mul_words
-#define bn_sqr_words _bn_sqr_words
-#define bn_div_words _bn_div_words
-#define bn_add_words _bn_add_words
-#define bn_sub_words _bn_sub_words
-#define bn_mul_comba8 _bn_mul_comba8
-#define bn_mul_comba4 _bn_mul_comba4
-#define bn_sqr_comba8 _bn_sqr_comba8
-#define bn_sqr_comba4 _bn_sqr_comba4
-
-#endif
-
-#ifdef OUT
-#define OK     1
-#define ALIGN  4
-#endif
-
-#ifdef BSDI
-#define OK              1
-#define ALIGN           4
-#undef SIZE
-#undef TYPE
-#define SIZE(a,b)
-#define TYPE(a,b)
-#endif
-
-#if defined(ELF) || defined(SOL)
-#define OK              1
-#define ALIGN           16
-#endif
-
-#ifndef OK
-You need to define one of
-ELF - elf systems - linux-elf, NetBSD and DG-UX
-OUT - a.out systems - linux-a.out and FreeBSD
-SOL - solaris systems, which are elf with strange comment lines
-BSDI - a.out with a very primative version of as.
-#endif
-
-/* Let the Assembler begin :-) */
-       /* Don't even think of reading this code */
-       /* It was automatically generated by bn-586.pl */
-       /* Which is a perl program used to generate the x86 assember for */
-       /* any of elf, a.out, BSDI,Win32, or Solaris */
-       /* eric <eay@cryptsoft.com> */
-
-       .file   "bn-586.s"
-       .version        "01.01"
-gcc2_compiled.:
-.text
-       .align ALIGN
-.globl bn_mul_add_words
-       TYPE(bn_mul_add_words,@function)
-bn_mul_add_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       xorl    %esi,           %esi
-       movl    20(%esp),       %edi
-       movl    28(%esp),       %ecx
-       movl    24(%esp),       %ebx
-       andl    $4294967288,    %ecx
-       movl    32(%esp),       %ebp
-       pushl   %ecx
-       jz      .L000maw_finish
-.L001maw_loop:
-       movl    %ecx,           (%esp)
-       /* Round 0 */
-       movl    (%ebx),         %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    (%edi),         %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       /* Round 4 */
-       movl    4(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    4(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       /* Round 8 */
-       movl    8(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    8(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       /* Round 12 */
-       movl    12(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    12(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       /* Round 16 */
-       movl    16(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    16(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       /* Round 20 */
-       movl    20(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    20(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       /* Round 24 */
-       movl    24(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    24(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-       /* Round 28 */
-       movl    28(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    28(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           28(%edi)
-       movl    %edx,           %esi
-
-       movl    (%esp),         %ecx
-       addl    $32,            %ebx
-       addl    $32,            %edi
-       subl    $8,             %ecx
-       jnz     .L001maw_loop
-.L000maw_finish:
-       movl    32(%esp),       %ecx
-       andl    $7,             %ecx
-       jnz     .L002maw_finish2
-       jmp     .L003maw_end
-.align ALIGN
-.L002maw_finish2:
-       /* Tail Round 0 */
-       movl    (%ebx),         %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    (%edi),         %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       /* Tail Round 1 */
-       movl    4(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    4(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       /* Tail Round 2 */
-       movl    8(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    8(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       /* Tail Round 3 */
-       movl    12(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    12(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       /* Tail Round 4 */
-       movl    16(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    16(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       /* Tail Round 5 */
-       movl    20(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    20(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       /* Tail Round 6 */
-       movl    24(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    24(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-.L003maw_end:
-       movl    %esi,           %eax
-       popl    %ecx
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_mul_add_words_end:
-       SIZE(bn_mul_add_words,.bn_mul_add_words_end-bn_mul_add_words)
-.ident "bn_mul_add_words"
-.text
-       .align ALIGN
-.globl bn_mul_words
-       TYPE(bn_mul_words,@function)
-bn_mul_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       xorl    %esi,           %esi
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %ebx
-       movl    28(%esp),       %ebp
-       movl    32(%esp),       %ecx
-       andl    $4294967288,    %ebp
-       jz      .L004mw_finish
-.L005mw_loop:
-       /* Round 0 */
-       movl    (%ebx),         %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       /* Round 4 */
-       movl    4(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       /* Round 8 */
-       movl    8(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       /* Round 12 */
-       movl    12(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       /* Round 16 */
-       movl    16(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       /* Round 20 */
-       movl    20(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       /* Round 24 */
-       movl    24(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-       /* Round 28 */
-       movl    28(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           28(%edi)
-       movl    %edx,           %esi
-
-       addl    $32,            %ebx
-       addl    $32,            %edi
-       subl    $8,             %ebp
-       jz      .L004mw_finish
-       jmp     .L005mw_loop
-.L004mw_finish:
-       movl    28(%esp),       %ebp
-       andl    $7,             %ebp
-       jnz     .L006mw_finish2
-       jmp     .L007mw_end
-.align ALIGN
-.L006mw_finish2:
-       /* Tail Round 0 */
-       movl    (%ebx),         %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       /* Tail Round 1 */
-       movl    4(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       /* Tail Round 2 */
-       movl    8(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       /* Tail Round 3 */
-       movl    12(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       /* Tail Round 4 */
-       movl    16(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       /* Tail Round 5 */
-       movl    20(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       /* Tail Round 6 */
-       movl    24(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-.L007mw_end:
-       movl    %esi,           %eax
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_mul_words_end:
-       SIZE(bn_mul_words,.bn_mul_words_end-bn_mul_words)
-.ident "bn_mul_words"
-.text
-       .align ALIGN
-.globl bn_sqr_words
-       TYPE(bn_sqr_words,@function)
-bn_sqr_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       movl    20(%esp),       %esi
-       movl    24(%esp),       %edi
-       movl    28(%esp),       %ebx
-       andl    $4294967288,    %ebx
-       jz      .L008sw_finish
-.L009sw_loop:
-       /* Round 0 */
-       movl    (%edi),         %eax
-       mull    %eax
-       movl    %eax,           (%esi)
-       movl    %edx,           4(%esi)
-       /* Round 4 */
-       movl    4(%edi),        %eax
-       mull    %eax
-       movl    %eax,           8(%esi)
-       movl    %edx,           12(%esi)
-       /* Round 8 */
-       movl    8(%edi),        %eax
-       mull    %eax
-       movl    %eax,           16(%esi)
-       movl    %edx,           20(%esi)
-       /* Round 12 */
-       movl    12(%edi),       %eax
-       mull    %eax
-       movl    %eax,           24(%esi)
-       movl    %edx,           28(%esi)
-       /* Round 16 */
-       movl    16(%edi),       %eax
-       mull    %eax
-       movl    %eax,           32(%esi)
-       movl    %edx,           36(%esi)
-       /* Round 20 */
-       movl    20(%edi),       %eax
-       mull    %eax
-       movl    %eax,           40(%esi)
-       movl    %edx,           44(%esi)
-       /* Round 24 */
-       movl    24(%edi),       %eax
-       mull    %eax
-       movl    %eax,           48(%esi)
-       movl    %edx,           52(%esi)
-       /* Round 28 */
-       movl    28(%edi),       %eax
-       mull    %eax
-       movl    %eax,           56(%esi)
-       movl    %edx,           60(%esi)
-
-       addl    $32,            %edi
-       addl    $64,            %esi
-       subl    $8,             %ebx
-       jnz     .L009sw_loop
-.L008sw_finish:
-       movl    28(%esp),       %ebx
-       andl    $7,             %ebx
-       jz      .L010sw_end
-       /* Tail Round 0 */
-       movl    (%edi),         %eax
-       mull    %eax
-       movl    %eax,           (%esi)
-       decl    %ebx
-       movl    %edx,           4(%esi)
-       jz      .L010sw_end
-       /* Tail Round 1 */
-       movl    4(%edi),        %eax
-       mull    %eax
-       movl    %eax,           8(%esi)
-       decl    %ebx
-       movl    %edx,           12(%esi)
-       jz      .L010sw_end
-       /* Tail Round 2 */
-       movl    8(%edi),        %eax
-       mull    %eax
-       movl    %eax,           16(%esi)
-       decl    %ebx
-       movl    %edx,           20(%esi)
-       jz      .L010sw_end
-       /* Tail Round 3 */
-       movl    12(%edi),       %eax
-       mull    %eax
-       movl    %eax,           24(%esi)
-       decl    %ebx
-       movl    %edx,           28(%esi)
-       jz      .L010sw_end
-       /* Tail Round 4 */
-       movl    16(%edi),       %eax
-       mull    %eax
-       movl    %eax,           32(%esi)
-       decl    %ebx
-       movl    %edx,           36(%esi)
-       jz      .L010sw_end
-       /* Tail Round 5 */
-       movl    20(%edi),       %eax
-       mull    %eax
-       movl    %eax,           40(%esi)
-       decl    %ebx
-       movl    %edx,           44(%esi)
-       jz      .L010sw_end
-       /* Tail Round 6 */
-       movl    24(%edi),       %eax
-       mull    %eax
-       movl    %eax,           48(%esi)
-       movl    %edx,           52(%esi)
-.L010sw_end:
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_sqr_words_end:
-       SIZE(bn_sqr_words,.bn_sqr_words_end-bn_sqr_words)
-.ident "bn_sqr_words"
-.text
-       .align ALIGN
-.globl bn_div_words
-       TYPE(bn_div_words,@function)
-bn_div_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-       movl    20(%esp),       %edx
-       movl    24(%esp),       %eax
-       movl    28(%esp),       %ebx
-       divl    %ebx
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_div_words_end:
-       SIZE(bn_div_words,.bn_div_words_end-bn_div_words)
-.ident "bn_div_words"
-.text
-       .align ALIGN
-.globl bn_add_words
-       TYPE(bn_add_words,@function)
-bn_add_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       movl    20(%esp),       %ebx
-       movl    24(%esp),       %esi
-       movl    28(%esp),       %edi
-       movl    32(%esp),       %ebp
-       xorl    %eax,           %eax
-       andl    $4294967288,    %ebp
-       jz      .L011aw_finish
-.L012aw_loop:
-       /* Round 0 */
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           (%ebx)
-       /* Round 1 */
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           4(%ebx)
-       /* Round 2 */
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           8(%ebx)
-       /* Round 3 */
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           12(%ebx)
-       /* Round 4 */
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           16(%ebx)
-       /* Round 5 */
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           20(%ebx)
-       /* Round 6 */
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-       /* Round 7 */
-       movl    28(%esi),       %ecx
-       movl    28(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           28(%ebx)
-
-       addl    $32,            %esi
-       addl    $32,            %edi
-       addl    $32,            %ebx
-       subl    $8,             %ebp
-       jnz     .L012aw_loop
-.L011aw_finish:
-       movl    32(%esp),       %ebp
-       andl    $7,             %ebp
-       jz      .L013aw_end
-       /* Tail Round 0 */
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           (%ebx)
-       jz      .L013aw_end
-       /* Tail Round 1 */
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           4(%ebx)
-       jz      .L013aw_end
-       /* Tail Round 2 */
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           8(%ebx)
-       jz      .L013aw_end
-       /* Tail Round 3 */
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           12(%ebx)
-       jz      .L013aw_end
-       /* Tail Round 4 */
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           16(%ebx)
-       jz      .L013aw_end
-       /* Tail Round 5 */
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           20(%ebx)
-       jz      .L013aw_end
-       /* Tail Round 6 */
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-.L013aw_end:
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_add_words_end:
-       SIZE(bn_add_words,.bn_add_words_end-bn_add_words)
-.ident "bn_add_words"
-.text
-       .align ALIGN
-.globl bn_sub_words
-       TYPE(bn_sub_words,@function)
-bn_sub_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       movl    20(%esp),       %ebx
-       movl    24(%esp),       %esi
-       movl    28(%esp),       %edi
-       movl    32(%esp),       %ebp
-       xorl    %eax,           %eax
-       andl    $4294967288,    %ebp
-       jz      .L014aw_finish
-.L015aw_loop:
-       /* Round 0 */
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           (%ebx)
-       /* Round 1 */
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           4(%ebx)
-       /* Round 2 */
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           8(%ebx)
-       /* Round 3 */
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           12(%ebx)
-       /* Round 4 */
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           16(%ebx)
-       /* Round 5 */
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           20(%ebx)
-       /* Round 6 */
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-       /* Round 7 */
-       movl    28(%esi),       %ecx
-       movl    28(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           28(%ebx)
-
-       addl    $32,            %esi
-       addl    $32,            %edi
-       addl    $32,            %ebx
-       subl    $8,             %ebp
-       jnz     .L015aw_loop
-.L014aw_finish:
-       movl    32(%esp),       %ebp
-       andl    $7,             %ebp
-       jz      .L016aw_end
-       /* Tail Round 0 */
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           (%ebx)
-       jz      .L016aw_end
-       /* Tail Round 1 */
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           4(%ebx)
-       jz      .L016aw_end
-       /* Tail Round 2 */
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           8(%ebx)
-       jz      .L016aw_end
-       /* Tail Round 3 */
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           12(%ebx)
-       jz      .L016aw_end
-       /* Tail Round 4 */
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           16(%ebx)
-       jz      .L016aw_end
-       /* Tail Round 5 */
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           20(%ebx)
-       jz      .L016aw_end
-       /* Tail Round 6 */
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-.L016aw_end:
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_sub_words_end:
-       SIZE(bn_sub_words,.bn_sub_words_end-bn_sub_words)
-.ident "bn_sub_words"
-.text
-       .align ALIGN
-.globl bn_mul_comba8
-       TYPE(bn_mul_comba8,@function)
-bn_mul_comba8:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       /* ################## Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* mul a[0]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ################## Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* mul a[1]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       /* saved r[1] */
-       /* ################## Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* mul a[2]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[0]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ################## Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* mul a[3]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[1]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[0]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    16(%esi),       %eax
-       /* saved r[3] */
-       /* ################## Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* mul a[4]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[3]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[2]*b[2] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[1]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[4] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    20(%esi),       %eax
-       /* saved r[4] */
-       /* ################## Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* mul a[5]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[4]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[3]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[2]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[0]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    24(%esi),       %eax
-       /* saved r[5] */
-       /* ################## Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* mul a[6]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[5]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[4]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[3]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[1]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[0]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[6] */
-       /* ################## Calculate word 7 */
-       xorl    %ebx,           %ebx
-       /* mul a[7]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[6]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[5]*b[2] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[4]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[3]*b[4] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[2]*b[5] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[1]*b[6] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[7] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[7] */
-       /* ################## Calculate word 8 */
-       xorl    %ecx,           %ecx
-       /* mul a[7]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[6]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[5]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[4]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[3]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[2]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[8] */
-       /* ################## Calculate word 9 */
-       xorl    %ebp,           %ebp
-       /* mul a[7]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[6]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[5]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[4]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[3]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[9] */
-       /* ################## Calculate word 10 */
-       xorl    %ebx,           %ebx
-       /* mul a[7]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[6]*b[4] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[5]*b[5] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[4]*b[6] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[3]*b[7] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[10] */
-       /* ################## Calculate word 11 */
-       xorl    %ecx,           %ecx
-       /* mul a[7]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[6]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[5]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[4]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[11] */
-       /* ################## Calculate word 12 */
-       xorl    %ebp,           %ebp
-       /* mul a[7]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[6]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[5]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[12] */
-       /* ################## Calculate word 13 */
-       xorl    %ebx,           %ebx
-       /* mul a[7]*b[6] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[6]*b[7] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[13] */
-       /* ################## Calculate word 14 */
-       xorl    %ecx,           %ecx
-       /* mul a[7]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%eax)
-       /* saved r[14] */
-       /* save r[15] */
-       movl    %ebx,           60(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba8_end:
-       SIZE(bn_mul_comba8,.bn_mul_comba8_end-bn_mul_comba8)
-.ident "desasm.pl"
-.text
-       .align ALIGN
-.globl bn_mul_comba4
-       TYPE(bn_mul_comba4,@function)
-bn_mul_comba4:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       /* ################## Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* mul a[0]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ################## Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* mul a[1]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       /* saved r[1] */
-       /* ################## Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* mul a[2]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[0]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ################## Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* mul a[3]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[1]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[0]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[3] */
-       /* ################## Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* mul a[3]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[2]*b[2] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[1]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[4] */
-       /* ################## Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* mul a[3]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[2]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[5] */
-       /* ################## Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* mul a[3]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       /* saved r[6] */
-       /* save r[7] */
-       movl    %ecx,           28(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba4_end:
-       SIZE(bn_mul_comba4,.bn_mul_comba4_end-bn_mul_comba4)
-.ident "desasm.pl"
-.text
-       .align ALIGN
-.globl bn_sqr_comba8
-       TYPE(bn_sqr_comba8,@function)
-bn_sqr_comba8:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-       movl    (%esi),         %eax
-       /* ############### Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* sqr a[0]*a[0] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%edi)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ############### Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* sqr a[1]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%edi)
-       movl    (%esi),         %edx
-       /* saved r[1] */
-       /* ############### Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* sqr a[2]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    4(%esi),        %eax
-       adcl    $0,             %ecx
-       /* sqr a[1]*a[1] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    (%esi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%edi)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ############### Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* sqr a[3]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       /* sqr a[2]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%edi)
-       movl    (%esi),         %edx
-       /* saved r[3] */
-       /* ############### Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* sqr a[4]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    4(%esi),        %edx
-       /* sqr a[3]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       /* sqr a[2]*a[2] */
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    (%esi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%edi)
-       movl    20(%esi),       %eax
-       /* saved r[4] */
-       /* ############### Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* sqr a[5]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    4(%esi),        %edx
-       /* sqr a[4]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    8(%esi),        %edx
-       /* sqr a[3]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%edi)
-       movl    (%esi),         %edx
-       /* saved r[5] */
-       /* ############### Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* sqr a[6]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       /* sqr a[5]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    8(%esi),        %edx
-       /* sqr a[4]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebp
-       /* sqr a[3]*a[3] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[6] */
-       /* ############### Calculate word 7 */
-       xorl    %ebx,           %ebx
-       /* sqr a[7]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    4(%esi),        %edx
-       /* sqr a[6]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    8(%esi),        %edx
-       /* sqr a[5]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    12(%esi),       %edx
-       /* sqr a[4]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%edi)
-       movl    4(%esi),        %edx
-       /* saved r[7] */
-       /* ############### Calculate word 8 */
-       xorl    %ecx,           %ecx
-       /* sqr a[7]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    8(%esi),        %edx
-       /* sqr a[6]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    12(%esi),       %edx
-       /* sqr a[5]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ecx
-       /* sqr a[4]*a[4] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    8(%esi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[8] */
-       /* ############### Calculate word 9 */
-       xorl    %ebp,           %ebp
-       /* sqr a[7]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    12(%esi),       %edx
-       /* sqr a[6]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    16(%esi),       %edx
-       /* sqr a[5]*a[4] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%edi)
-       movl    12(%esi),       %edx
-       /* saved r[9] */
-       /* ############### Calculate word 10 */
-       xorl    %ebx,           %ebx
-       /* sqr a[7]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    16(%esi),       %edx
-       /* sqr a[6]*a[4] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebx
-       /* sqr a[5]*a[5] */
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    16(%esi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[10] */
-       /* ############### Calculate word 11 */
-       xorl    %ecx,           %ecx
-       /* sqr a[7]*a[4] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    20(%esi),       %edx
-       /* sqr a[6]*a[5] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    28(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%edi)
-       movl    20(%esi),       %edx
-       /* saved r[11] */
-       /* ############### Calculate word 12 */
-       xorl    %ebp,           %ebp
-       /* sqr a[7]*a[5] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebp
-       /* sqr a[6]*a[6] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[12] */
-       /* ############### Calculate word 13 */
-       xorl    %ebx,           %ebx
-       /* sqr a[7]*a[6] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%edi)
-       /* saved r[13] */
-       /* ############### Calculate word 14 */
-       xorl    %ecx,           %ecx
-       /* sqr a[7]*a[7] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%edi)
-       /* saved r[14] */
-       movl    %ebx,           60(%edi)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_sqr_comba8_end:
-       SIZE(bn_sqr_comba8,.bn_sqr_comba8_end-bn_sqr_comba8)
-.ident "desasm.pl"
-.text
-       .align ALIGN
-.globl bn_sqr_comba4
-       TYPE(bn_sqr_comba4,@function)
-bn_sqr_comba4:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-       movl    (%esi),         %eax
-       /* ############### Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* sqr a[0]*a[0] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%edi)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ############### Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* sqr a[1]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%edi)
-       movl    (%esi),         %edx
-       /* saved r[1] */
-       /* ############### Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* sqr a[2]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    4(%esi),        %eax
-       adcl    $0,             %ecx
-       /* sqr a[1]*a[1] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    (%esi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%edi)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ############### Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* sqr a[3]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       /* sqr a[2]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%edi)
-       movl    4(%esi),        %edx
-       /* saved r[3] */
-       /* ############### Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* sqr a[3]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       /* sqr a[2]*a[2] */
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%edi)
-       movl    12(%esi),       %eax
-       /* saved r[4] */
-       /* ############### Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* sqr a[3]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%edi)
-       /* saved r[5] */
-       /* ############### Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* sqr a[3]*a[3] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%edi)
-       /* saved r[6] */
-       movl    %ecx,           28(%edi)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_sqr_comba4_end:
-       SIZE(bn_sqr_comba4,.bn_sqr_comba4_end-bn_sqr_comba4)
-.ident "desasm.pl"
index 181d1f0..c1ce67a 100644 (file)
@@ -16,7 +16,7 @@ require "alpha/sqr_c4.pl";
 require "alpha/sqr_c8.pl";
 require "alpha/div.pl";
 
-&asm_init($ARGV[0],"bn-586.pl");
+&asm_init($ARGV[0],$0);
 
 &bn_mul_words("bn_mul_words");
 &bn_sqr_words("bn_sqr_words");
index 0bcb5a6..5d962cb 100644 (file)
@@ -3,7 +3,7 @@
 push(@INC,"perlasm","../../perlasm");
 require "x86asm.pl";
 
-&asm_init($ARGV[0],"bn-586.pl");
+&asm_init($ARGV[0],$0);
 
 &bn_mul_comba("bn_mul_comba8",8);
 &bn_mul_comba("bn_mul_comba4",4);
index 23869a4..67dad3e 100644 (file)
@@ -6,7 +6,7 @@
 push(@INC,"perlasm","../../perlasm");
 require "alpha.pl";
 
-&asm_init($ARGV[0],"bn-586.pl");
+&asm_init($ARGV[0],$0);
 
 print &bn_sub_words("bn_sub_words");
 
diff --git a/crypto/bn/asm/co86unix.cpp b/crypto/bn/asm/co86unix.cpp
deleted file mode 100644 (file)
index fa80b14..0000000
+++ /dev/null
@@ -1,1315 +0,0 @@
-/* Run the C pre-processor over this file with one of the following defined
- * ELF - elf object files,
- * OUT - a.out object files,
- * BSDI - BSDI style a.out object files
- * SOL - Solaris style elf
- */
-
-#define TYPE(a,b)       .type   a,b
-#define SIZE(a,b)       .size   a,b
-
-#if defined(OUT) || defined(BSDI)
-#define bn_mul_comba8 _bn_mul_comba8
-#define bn_mul_comba4 _bn_mul_comba4
-#define bn_sqr_comba8 _bn_sqr_comba8
-#define bn_sqr_comba4 _bn_sqr_comba4
-
-#endif
-
-#ifdef OUT
-#define OK     1
-#define ALIGN  4
-#endif
-
-#ifdef BSDI
-#define OK              1
-#define ALIGN           4
-#undef SIZE
-#undef TYPE
-#define SIZE(a,b)
-#define TYPE(a,b)
-#endif
-
-#if defined(ELF) || defined(SOL)
-#define OK              1
-#define ALIGN           16
-#endif
-
-#ifndef OK
-You need to define one of
-ELF - elf systems - linux-elf, NetBSD and DG-UX
-OUT - a.out systems - linux-a.out and FreeBSD
-SOL - solaris systems, which are elf with strange comment lines
-BSDI - a.out with a very primative version of as.
-#endif
-
-/* Let the Assembler begin :-) */
-       /* Don't even think of reading this code */
-       /* It was automatically generated by bn-586.pl */
-       /* Which is a perl program used to generate the x86 assember for */
-       /* any of elf, a.out, BSDI,Win32, or Solaris */
-       /* eric <eay@cryptsoft.com> */
-
-       .file   "bn-586.s"
-       .version        "01.01"
-gcc2_compiled.:
-.text
-       .align ALIGN
-.globl bn_mul_comba8
-       TYPE(bn_mul_comba8,@function)
-bn_mul_comba8:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       /* ################## Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* mul a[0]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ################## Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* mul a[1]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       /* saved r[1] */
-       /* ################## Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* mul a[2]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[0]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ################## Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* mul a[3]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[1]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[0]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    16(%esi),       %eax
-       /* saved r[3] */
-       /* ################## Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* mul a[4]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[3]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[2]*b[2] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[1]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[4] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    20(%esi),       %eax
-       /* saved r[4] */
-       /* ################## Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* mul a[5]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[4]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[3]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[2]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[0]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    24(%esi),       %eax
-       /* saved r[5] */
-       /* ################## Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* mul a[6]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[5]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[4]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[3]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[1]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[0]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[6] */
-       /* ################## Calculate word 7 */
-       xorl    %ebx,           %ebx
-       /* mul a[7]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[6]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[5]*b[2] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[4]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[3]*b[4] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[2]*b[5] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[1]*b[6] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[7] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[7] */
-       /* ################## Calculate word 8 */
-       xorl    %ecx,           %ecx
-       /* mul a[7]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[6]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[5]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[4]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[3]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[2]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[8] */
-       /* ################## Calculate word 9 */
-       xorl    %ebp,           %ebp
-       /* mul a[7]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[6]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[5]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[4]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[3]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[9] */
-       /* ################## Calculate word 10 */
-       xorl    %ebx,           %ebx
-       /* mul a[7]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[6]*b[4] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[5]*b[5] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[4]*b[6] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[3]*b[7] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[10] */
-       /* ################## Calculate word 11 */
-       xorl    %ecx,           %ecx
-       /* mul a[7]*b[4] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[6]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[5]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[4]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[11] */
-       /* ################## Calculate word 12 */
-       xorl    %ebp,           %ebp
-       /* mul a[7]*b[5] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[6]*b[6] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[5]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[12] */
-       /* ################## Calculate word 13 */
-       xorl    %ebx,           %ebx
-       /* mul a[7]*b[6] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[6]*b[7] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%eax)
-       movl    28(%esi),       %eax
-       /* saved r[13] */
-       /* ################## Calculate word 14 */
-       xorl    %ecx,           %ecx
-       /* mul a[7]*b[7] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%eax)
-       /* saved r[14] */
-       /* save r[15] */
-       movl    %ebx,           60(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba8_end:
-       SIZE(bn_mul_comba8,.bn_mul_comba8_end-bn_mul_comba8)
-.ident "desasm.pl"
-.text
-       .align ALIGN
-.globl bn_mul_comba4
-       TYPE(bn_mul_comba4,@function)
-bn_mul_comba4:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       /* ################## Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* mul a[0]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ################## Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* mul a[1]*b[0] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[0]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       /* saved r[1] */
-       /* ################## Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* mul a[2]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[1]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       /* mul a[0]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ################## Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* mul a[3]*b[0] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[2]*b[1] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       /* mul a[1]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       /* mul a[0]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[3] */
-       /* ################## Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* mul a[3]*b[1] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       /* mul a[2]*b[2] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       /* mul a[1]*b[3] */
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[4] */
-       /* ################## Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* mul a[3]*b[2] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       /* mul a[2]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    12(%esi),       %eax
-       /* saved r[5] */
-       /* ################## Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* mul a[3]*b[3] */
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       /* saved r[6] */
-       /* save r[7] */
-       movl    %ecx,           28(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba4_end:
-       SIZE(bn_mul_comba4,.bn_mul_comba4_end-bn_mul_comba4)
-.ident "desasm.pl"
-.text
-       .align ALIGN
-.globl bn_sqr_comba8
-       TYPE(bn_sqr_comba8,@function)
-bn_sqr_comba8:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-       movl    (%esi),         %eax
-       /* ############### Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* sqr a[0]*a[0] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%edi)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ############### Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* sqr a[1]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%edi)
-       movl    (%esi),         %edx
-       /* saved r[1] */
-       /* ############### Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* sqr a[2]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    4(%esi),        %eax
-       adcl    $0,             %ecx
-       /* sqr a[1]*a[1] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    (%esi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%edi)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ############### Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* sqr a[3]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       /* sqr a[2]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%edi)
-       movl    (%esi),         %edx
-       /* saved r[3] */
-       /* ############### Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* sqr a[4]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    4(%esi),        %edx
-       /* sqr a[3]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       /* sqr a[2]*a[2] */
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    (%esi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%edi)
-       movl    20(%esi),       %eax
-       /* saved r[4] */
-       /* ############### Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* sqr a[5]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    4(%esi),        %edx
-       /* sqr a[4]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    8(%esi),        %edx
-       /* sqr a[3]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%edi)
-       movl    (%esi),         %edx
-       /* saved r[5] */
-       /* ############### Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* sqr a[6]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       /* sqr a[5]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    8(%esi),        %edx
-       /* sqr a[4]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebp
-       /* sqr a[3]*a[3] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[6] */
-       /* ############### Calculate word 7 */
-       xorl    %ebx,           %ebx
-       /* sqr a[7]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    4(%esi),        %edx
-       /* sqr a[6]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    8(%esi),        %edx
-       /* sqr a[5]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    12(%esi),       %edx
-       /* sqr a[4]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%edi)
-       movl    4(%esi),        %edx
-       /* saved r[7] */
-       /* ############### Calculate word 8 */
-       xorl    %ecx,           %ecx
-       /* sqr a[7]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    8(%esi),        %edx
-       /* sqr a[6]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    12(%esi),       %edx
-       /* sqr a[5]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ecx
-       /* sqr a[4]*a[4] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    8(%esi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[8] */
-       /* ############### Calculate word 9 */
-       xorl    %ebp,           %ebp
-       /* sqr a[7]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    12(%esi),       %edx
-       /* sqr a[6]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    16(%esi),       %edx
-       /* sqr a[5]*a[4] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%edi)
-       movl    12(%esi),       %edx
-       /* saved r[9] */
-       /* ############### Calculate word 10 */
-       xorl    %ebx,           %ebx
-       /* sqr a[7]*a[3] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    16(%esi),       %edx
-       /* sqr a[6]*a[4] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebx
-       /* sqr a[5]*a[5] */
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    16(%esi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[10] */
-       /* ############### Calculate word 11 */
-       xorl    %ecx,           %ecx
-       /* sqr a[7]*a[4] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    20(%esi),       %edx
-       /* sqr a[6]*a[5] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    28(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%edi)
-       movl    20(%esi),       %edx
-       /* saved r[11] */
-       /* ############### Calculate word 12 */
-       xorl    %ebp,           %ebp
-       /* sqr a[7]*a[5] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebp
-       /* sqr a[6]*a[6] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%edi)
-       movl    28(%esi),       %eax
-       /* saved r[12] */
-       /* ############### Calculate word 13 */
-       xorl    %ebx,           %ebx
-       /* sqr a[7]*a[6] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%edi)
-       /* saved r[13] */
-       /* ############### Calculate word 14 */
-       xorl    %ecx,           %ecx
-       /* sqr a[7]*a[7] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%edi)
-       /* saved r[14] */
-       movl    %ebx,           60(%edi)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_sqr_comba8_end:
-       SIZE(bn_sqr_comba8,.bn_sqr_comba8_end-bn_sqr_comba8)
-.ident "desasm.pl"
-.text
-       .align ALIGN
-.globl bn_sqr_comba4
-       TYPE(bn_sqr_comba4,@function)
-bn_sqr_comba4:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-       movl    (%esi),         %eax
-       /* ############### Calculate word 0 */
-       xorl    %ebp,           %ebp
-       /* sqr a[0]*a[0] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%edi)
-       movl    4(%esi),        %eax
-       /* saved r[0] */
-       /* ############### Calculate word 1 */
-       xorl    %ebx,           %ebx
-       /* sqr a[1]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%edi)
-       movl    (%esi),         %edx
-       /* saved r[1] */
-       /* ############### Calculate word 2 */
-       xorl    %ecx,           %ecx
-       /* sqr a[2]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    4(%esi),        %eax
-       adcl    $0,             %ecx
-       /* sqr a[1]*a[1] */
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    (%esi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%edi)
-       movl    12(%esi),       %eax
-       /* saved r[2] */
-       /* ############### Calculate word 3 */
-       xorl    %ebp,           %ebp
-       /* sqr a[3]*a[0] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       /* sqr a[2]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%edi)
-       movl    4(%esi),        %edx
-       /* saved r[3] */
-       /* ############### Calculate word 4 */
-       xorl    %ebx,           %ebx
-       /* sqr a[3]*a[1] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       /* sqr a[2]*a[2] */
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%edi)
-       movl    12(%esi),       %eax
-       /* saved r[4] */
-       /* ############### Calculate word 5 */
-       xorl    %ecx,           %ecx
-       /* sqr a[3]*a[2] */
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%edi)
-       /* saved r[5] */
-       /* ############### Calculate word 6 */
-       xorl    %ebp,           %ebp
-       /* sqr a[3]*a[3] */
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%edi)
-       /* saved r[6] */
-       movl    %ecx,           28(%edi)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_sqr_comba4_end:
-       SIZE(bn_sqr_comba4,.bn_sqr_comba4_end-bn_sqr_comba4)
-.ident "desasm.pl"
diff --git a/crypto/bn/asm/elf.s b/crypto/bn/asm/elf.s
deleted file mode 100644 (file)
index 97ad126..0000000
+++ /dev/null
@@ -1,1269 +0,0 @@
-       # Don't even think of reading this code 
-       # It was automatically generated by bn-586.pl 
-       # Which is a perl program used to generate the x86 assember for 
-       # any of elf, a.out, BSDI,Win32, or Solaris 
-       # eric <eay@cryptsoft.com> 
-
-       .file   "bn-586.s"
-       .version        "01.01"
-gcc2_compiled.:
-.text
-       .align 16
-.globl bn_mul_comba8
-       .type   bn_mul_comba8,@function
-bn_mul_comba8:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       # ################## Calculate word 0 
-       xorl    %ebp,           %ebp
-       # mul a[0]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       # saved r[0] 
-       # ################## Calculate word 1 
-       xorl    %ebx,           %ebx
-       # mul a[1]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       # saved r[1] 
-       # ################## Calculate word 2 
-       xorl    %ecx,           %ecx
-       # mul a[2]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[0]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       # saved r[2] 
-       # ################## Calculate word 3 
-       xorl    %ebp,           %ebp
-       # mul a[3]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[1]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[0]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    16(%esi),       %eax
-       # saved r[3] 
-       # ################## Calculate word 4 
-       xorl    %ebx,           %ebx
-       # mul a[4]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[3]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[2]*b[2] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[1]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[4] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    20(%esi),       %eax
-       # saved r[4] 
-       # ################## Calculate word 5 
-       xorl    %ecx,           %ecx
-       # mul a[5]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[4]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[3]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[2]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[0]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    24(%esi),       %eax
-       # saved r[5] 
-       # ################## Calculate word 6 
-       xorl    %ebp,           %ebp
-       # mul a[6]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[5]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[4]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[3]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[1]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[0]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       movl    28(%esi),       %eax
-       # saved r[6] 
-       # ################## Calculate word 7 
-       xorl    %ebx,           %ebx
-       # mul a[7]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[6]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[5]*b[2] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[4]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[3]*b[4] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[2]*b[5] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[1]*b[6] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[7] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%eax)
-       movl    28(%esi),       %eax
-       # saved r[7] 
-       # ################## Calculate word 8 
-       xorl    %ecx,           %ecx
-       # mul a[7]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[6]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[5]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[4]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[3]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[2]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%eax)
-       movl    28(%esi),       %eax
-       # saved r[8] 
-       # ################## Calculate word 9 
-       xorl    %ebp,           %ebp
-       # mul a[7]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[6]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[5]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[4]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[3]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%eax)
-       movl    28(%esi),       %eax
-       # saved r[9] 
-       # ################## Calculate word 10 
-       xorl    %ebx,           %ebx
-       # mul a[7]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[6]*b[4] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[5]*b[5] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[4]*b[6] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[3]*b[7] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%eax)
-       movl    28(%esi),       %eax
-       # saved r[10] 
-       # ################## Calculate word 11 
-       xorl    %ecx,           %ecx
-       # mul a[7]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[6]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[5]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[4]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%eax)
-       movl    28(%esi),       %eax
-       # saved r[11] 
-       # ################## Calculate word 12 
-       xorl    %ebp,           %ebp
-       # mul a[7]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[6]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[5]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%eax)
-       movl    28(%esi),       %eax
-       # saved r[12] 
-       # ################## Calculate word 13 
-       xorl    %ebx,           %ebx
-       # mul a[7]*b[6] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[6]*b[7] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%eax)
-       movl    28(%esi),       %eax
-       # saved r[13] 
-       # ################## Calculate word 14 
-       xorl    %ecx,           %ecx
-       # mul a[7]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%eax)
-       # saved r[14] 
-       # save r[15] 
-       movl    %ebx,           60(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba8_end:
-       .size   bn_mul_comba8,.bn_mul_comba8_end-bn_mul_comba8
-.ident "desasm.pl"
-.text
-       .align 16
-.globl bn_mul_comba4
-       .type   bn_mul_comba4,@function
-bn_mul_comba4:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       # ################## Calculate word 0 
-       xorl    %ebp,           %ebp
-       # mul a[0]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       # saved r[0] 
-       # ################## Calculate word 1 
-       xorl    %ebx,           %ebx
-       # mul a[1]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       # saved r[1] 
-       # ################## Calculate word 2 
-       xorl    %ecx,           %ecx
-       # mul a[2]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[0]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       # saved r[2] 
-       # ################## Calculate word 3 
-       xorl    %ebp,           %ebp
-       # mul a[3]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[1]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[0]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    12(%esi),       %eax
-       # saved r[3] 
-       # ################## Calculate word 4 
-       xorl    %ebx,           %ebx
-       # mul a[3]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[2]*b[2] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[1]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    12(%esi),       %eax
-       # saved r[4] 
-       # ################## Calculate word 5 
-       xorl    %ecx,           %ecx
-       # mul a[3]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[2]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    12(%esi),       %eax
-       # saved r[5] 
-       # ################## Calculate word 6 
-       xorl    %ebp,           %ebp
-       # mul a[3]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       # saved r[6] 
-       # save r[7] 
-       movl    %ecx,           28(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba4_end:
-       .size   bn_mul_comba4,.bn_mul_comba4_end-bn_mul_comba4
-.ident "desasm.pl"
-.text
-       .align 16
-.globl bn_sqr_comba8
-       .type   bn_sqr_comba8,@function
-bn_sqr_comba8:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-       movl    (%esi),         %eax
-       # ############### Calculate word 0 
-       xorl    %ebp,           %ebp
-       # sqr a[0]*a[0] 
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%edi)
-       movl    4(%esi),        %eax
-       # saved r[0] 
-       # ############### Calculate word 1 
-       xorl    %ebx,           %ebx
-       # sqr a[1]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%edi)
-       movl    (%esi),         %edx
-       # saved r[1] 
-       # ############### Calculate word 2 
-       xorl    %ecx,           %ecx
-       # sqr a[2]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    4(%esi),        %eax
-       adcl    $0,             %ecx
-       # sqr a[1]*a[1] 
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    (%esi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%edi)
-       movl    12(%esi),       %eax
-       # saved r[2] 
-       # ############### Calculate word 3 
-       xorl    %ebp,           %ebp
-       # sqr a[3]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       # sqr a[2]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%edi)
-       movl    (%esi),         %edx
-       # saved r[3] 
-       # ############### Calculate word 4 
-       xorl    %ebx,           %ebx
-       # sqr a[4]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    4(%esi),        %edx
-       # sqr a[3]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       # sqr a[2]*a[2] 
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    (%esi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%edi)
-       movl    20(%esi),       %eax
-       # saved r[4] 
-       # ############### Calculate word 5 
-       xorl    %ecx,           %ecx
-       # sqr a[5]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    4(%esi),        %edx
-       # sqr a[4]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    8(%esi),        %edx
-       # sqr a[3]*a[2] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%edi)
-       movl    (%esi),         %edx
-       # saved r[5] 
-       # ############### Calculate word 6 
-       xorl    %ebp,           %ebp
-       # sqr a[6]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       # sqr a[5]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    8(%esi),        %edx
-       # sqr a[4]*a[2] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebp
-       # sqr a[3]*a[3] 
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%edi)
-       movl    28(%esi),       %eax
-       # saved r[6] 
-       # ############### Calculate word 7 
-       xorl    %ebx,           %ebx
-       # sqr a[7]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    4(%esi),        %edx
-       # sqr a[6]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    8(%esi),        %edx
-       # sqr a[5]*a[2] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    16(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    12(%esi),       %edx
-       # sqr a[4]*a[3] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%edi)
-       movl    4(%esi),        %edx
-       # saved r[7] 
-       # ############### Calculate word 8 
-       xorl    %ecx,           %ecx
-       # sqr a[7]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    8(%esi),        %edx
-       # sqr a[6]*a[2] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    12(%esi),       %edx
-       # sqr a[5]*a[3] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    16(%esi),       %eax
-       adcl    $0,             %ecx
-       # sqr a[4]*a[4] 
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    8(%esi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%edi)
-       movl    28(%esi),       %eax
-       # saved r[8] 
-       # ############### Calculate word 9 
-       xorl    %ebp,           %ebp
-       # sqr a[7]*a[2] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    12(%esi),       %edx
-       # sqr a[6]*a[3] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    16(%esi),       %edx
-       # sqr a[5]*a[4] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%edi)
-       movl    12(%esi),       %edx
-       # saved r[9] 
-       # ############### Calculate word 10 
-       xorl    %ebx,           %ebx
-       # sqr a[7]*a[3] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    16(%esi),       %edx
-       # sqr a[6]*a[4] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    20(%esi),       %eax
-       adcl    $0,             %ebx
-       # sqr a[5]*a[5] 
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    16(%esi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%edi)
-       movl    28(%esi),       %eax
-       # saved r[10] 
-       # ############### Calculate word 11 
-       xorl    %ecx,           %ecx
-       # sqr a[7]*a[4] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    20(%esi),       %edx
-       # sqr a[6]*a[5] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    28(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%edi)
-       movl    20(%esi),       %edx
-       # saved r[11] 
-       # ############### Calculate word 12 
-       xorl    %ebp,           %ebp
-       # sqr a[7]*a[5] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %eax
-       adcl    $0,             %ebp
-       # sqr a[6]*a[6] 
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    24(%esi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%edi)
-       movl    28(%esi),       %eax
-       # saved r[12] 
-       # ############### Calculate word 13 
-       xorl    %ebx,           %ebx
-       # sqr a[7]*a[6] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    28(%esi),       %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%edi)
-       # saved r[13] 
-       # ############### Calculate word 14 
-       xorl    %ecx,           %ecx
-       # sqr a[7]*a[7] 
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%edi)
-       # saved r[14] 
-       movl    %ebx,           60(%edi)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_sqr_comba8_end:
-       .size   bn_sqr_comba8,.bn_sqr_comba8_end-bn_sqr_comba8
-.ident "desasm.pl"
-.text
-       .align 16
-.globl bn_sqr_comba4
-       .type   bn_sqr_comba4,@function
-bn_sqr_comba4:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-       movl    (%esi),         %eax
-       # ############### Calculate word 0 
-       xorl    %ebp,           %ebp
-       # sqr a[0]*a[0] 
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    (%esi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%edi)
-       movl    4(%esi),        %eax
-       # saved r[0] 
-       # ############### Calculate word 1 
-       xorl    %ebx,           %ebx
-       # sqr a[1]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%edi)
-       movl    (%esi),         %edx
-       # saved r[1] 
-       # ############### Calculate word 2 
-       xorl    %ecx,           %ecx
-       # sqr a[2]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    4(%esi),        %eax
-       adcl    $0,             %ecx
-       # sqr a[1]*a[1] 
-       mull    %eax
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    (%esi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%edi)
-       movl    12(%esi),       %eax
-       # saved r[2] 
-       # ############### Calculate word 3 
-       xorl    %ebp,           %ebp
-       # sqr a[3]*a[0] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebp
-       movl    4(%esi),        %edx
-       # sqr a[2]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebp
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%edi)
-       movl    4(%esi),        %edx
-       # saved r[3] 
-       # ############### Calculate word 4 
-       xorl    %ebx,           %ebx
-       # sqr a[3]*a[1] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ebx
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %eax
-       adcl    $0,             %ebx
-       # sqr a[2]*a[2] 
-       mull    %eax
-       addl    %eax,           %ecx
-       adcl    %edx,           %ebp
-       movl    8(%esi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%edi)
-       movl    12(%esi),       %eax
-       # saved r[4] 
-       # ############### Calculate word 5 
-       xorl    %ecx,           %ecx
-       # sqr a[3]*a[2] 
-       mull    %edx
-       addl    %eax,           %eax
-       adcl    %edx,           %edx
-       adcl    $0,             %ecx
-       addl    %eax,           %ebp
-       adcl    %edx,           %ebx
-       movl    12(%esi),       %eax
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%edi)
-       # saved r[5] 
-       # ############### Calculate word 6 
-       xorl    %ebp,           %ebp
-       # sqr a[3]*a[3] 
-       mull    %eax
-       addl    %eax,           %ebx
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%edi)
-       # saved r[6] 
-       movl    %ecx,           28(%edi)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_sqr_comba4_end:
-       .size   bn_sqr_comba4,.bn_sqr_comba4_end-bn_sqr_comba4
-.ident "desasm.pl"
diff --git a/crypto/bn/asm/f b/crypto/bn/asm/f
deleted file mode 100644 (file)
index a23fa15..0000000
+++ /dev/null
@@ -1,500 +0,0 @@
-       .text
-       .align 3
-       .globl bn_sqr_comba8
-       .ent bn_sqr_comba8
-bn_sqr_comba8:
-bn_sqr_comba8..ng:
-       .frame $30,0,$26,0
-       .prologue 0
-
-       ldq     $0,     0($17)
-       ldq     $1,     8($17)
-       ldq     $2,     16($17)
-       ldq     $3,     24($17)
-       ldq     $4,     32($17)
-       ldq     $5,     40($17)
-       ldq     $6,     48($17)
-       ldq     $7,     56($17)
-       bis     $31,    $31,    $23
-       mulq    $0,     $0,     $8
-       umulh   $0,     $0,     $22
-       stq     $8,     0($16)
-       bis     $31,    $31,    $8
-       mulq    $1,     $0,     $24
-       umulh   $1,     $0,     $25
-       cmplt   $24,    $31,    $27
-       cmplt   $25,    $31,    $28
-       addq    $24,    $24,    $24
-       addq    $25,    $25,    $25
-       addq    $25,    $27,    $25
-       addq    $8,     $28,    $8
-       addq    $22,    $24,    $22
-       addq    $23,    $25,    $23
-       cmpult  $22,    $24,    $21
-       cmpult  $23,    $25,    $20
-       addq    $23,    $21,    $23
-       addq    $8,     $20,    $8
-       stq     $22,    8($16)
-       bis     $31,    $31,    $22
-       mulq    $1,     $1,     $19
-       umulh   $1,     $1,     $18
-       addq    $23,    $19,    $23
-       addq    $8,     $18,    $8
-       cmpult  $23,    $19,    $17
-       cmpult  $8,     $18,    $27
-       addq    $8,     $17,    $8
-       addq    $22,    $27,    $22
-       mulq    $2,     $0,     $28
-       umulh   $2,     $0,     $24
-       cmplt   $28,    $31,    $25
-       cmplt   $24,    $31,    $21
-       addq    $28,    $28,    $28
-       addq    $24,    $24,    $24
-       addq    $24,    $25,    $24
-       addq    $22,    $21,    $22
-       addq    $23,    $28,    $23
-       addq    $8,     $24,    $8
-       cmpult  $23,    $28,    $20
-       cmpult  $8,     $24,    $19
-       addq    $8,     $20,    $8
-       addq    $22,    $19,    $22
-       stq     $23,    16($16)
-       bis     $31,    $31,    $23
-       mulq    $2,     $1,     $18
-       umulh   $2,     $1,     $17
-       cmplt   $18,    $31,    $27
-       cmplt   $17,    $31,    $25
-       addq    $18,    $18,    $18
-       addq    $17,    $17,    $17
-       addq    $17,    $27,    $17
-       addq    $23,    $25,    $23
-       addq    $8,     $18,    $8
-       addq    $22,    $17,    $22
-       cmpult  $8,     $18,    $21
-       cmpult  $22,    $17,    $28
-       addq    $22,    $21,    $22
-       addq    $23,    $28,    $23
-       mulq    $3,     $0,     $24
-       umulh   $3,     $0,     $20
-       cmplt   $24,    $31,    $19
-       cmplt   $20,    $31,    $27
-       addq    $24,    $24,    $24
-       addq    $20,    $20,    $20
-       addq    $20,    $19,    $20
-       addq    $23,    $27,    $23
-       addq    $8,     $24,    $8
-       addq    $22,    $20,    $22
-       cmpult  $8,     $24,    $25
-       cmpult  $22,    $20,    $18
-       addq    $22,    $25,    $22
-       addq    $23,    $18,    $23
-       stq     $8,     24($16)
-       bis     $31,    $31,    $8
-       mulq    $2,     $2,     $17
-       umulh   $2,     $2,     $21
-       addq    $22,    $17,    $22
-       addq    $23,    $21,    $23
-       cmpult  $22,    $17,    $28
-       cmpult  $23,    $21,    $19
-       addq    $23,    $28,    $23
-       addq    $8,     $19,    $8
-       mulq    $3,     $1,     $27
-       umulh   $3,     $1,     $24
-       cmplt   $27,    $31,    $20
-       cmplt   $24,    $31,    $25
-       addq    $27,    $27,    $27
-       addq    $24,    $24,    $24
-       addq    $24,    $20,    $24
-       addq    $8,     $25,    $8
-       addq    $22,    $27,    $22
-       addq    $23,    $24,    $23
-       cmpult  $22,    $27,    $18
-       cmpult  $23,    $24,    $17
-       addq    $23,    $18,    $23
-       addq    $8,     $17,    $8
-       mulq    $4,     $0,     $21
-       umulh   $4,     $0,     $28
-       cmplt   $21,    $31,    $19
-       cmplt   $28,    $31,    $20
-       addq    $21,    $21,    $21
-       addq    $28,    $28,    $28
-       addq    $28,    $19,    $28
-       addq    $8,     $20,    $8
-       addq    $22,    $21,    $22
-       addq    $23,    $28,    $23
-       cmpult  $22,    $21,    $25
-       cmpult  $23,    $28,    $27
-       addq    $23,    $25,    $23
-       addq    $8,     $27,    $8
-       stq     $22,    32($16)
-       bis     $31,    $31,    $22
-       mulq    $3,     $2,     $24
-       umulh   $3,     $2,     $18
-       cmplt   $24,    $31,    $17
-       cmplt   $18,    $31,    $19
-       addq    $24,    $24,    $24
-       addq    $18,    $18,    $18
-       addq    $18,    $17,    $18
-       addq    $22,    $19,    $22
-       addq    $23,    $24,    $23
-       addq    $8,     $18,    $8
-       cmpult  $23,    $24,    $20
-       cmpult  $8,     $18,    $21
-       addq    $8,     $20,    $8
-       addq    $22,    $21,    $22
-       mulq    $4,     $1,     $28
-       umulh   $4,     $1,     $25
-       cmplt   $28,    $31,    $27
-       cmplt   $25,    $31,    $17
-       addq    $28,    $28,    $28
-       addq    $25,    $25,    $25
-       addq    $25,    $27,    $25
-       addq    $22,    $17,    $22
-       addq    $23,    $28,    $23
-       addq    $8,     $25,    $8
-       cmpult  $23,    $28,    $19
-       cmpult  $8,     $25,    $24
-       addq    $8,     $19,    $8
-       addq    $22,    $24,    $22
-       mulq    $5,     $0,     $18
-       umulh   $5,     $0,     $20
-       cmplt   $18,    $31,    $21
-       cmplt   $20,    $31,    $27
-       addq    $18,    $18,    $18
-       addq    $20,    $20,    $20
-       addq    $20,    $21,    $20
-       addq    $22,    $27,    $22
-       addq    $23,    $18,    $23
-       addq    $8,     $20,    $8
-       cmpult  $23,    $18,    $17
-       cmpult  $8,     $20,    $28
-       addq    $8,     $17,    $8
-       addq    $22,    $28,    $22
-       stq     $23,    40($16)
-       bis     $31,    $31,    $23
-       mulq    $3,     $3,     $25
-       umulh   $3,     $3,     $19
-       addq    $8,     $25,    $8
-       addq    $22,    $19,    $22
-       cmpult  $8,     $25,    $24
-       cmpult  $22,    $19,    $21
-       addq    $22,    $24,    $22
-       addq    $23,    $21,    $23
-       mulq    $4,     $2,     $27
-       umulh   $4,     $2,     $18
-       cmplt   $27,    $31,    $20
-       cmplt   $18,    $31,    $17
-       addq    $27,    $27,    $27
-       addq    $18,    $18,    $18
-       addq    $18,    $20,    $18
-       addq    $23,    $17,    $23
-       addq    $8,     $27,    $8
-       addq    $22,    $18,    $22
-       cmpult  $8,     $27,    $28
-       cmpult  $22,    $18,    $25
-       addq    $22,    $28,    $22
-       addq    $23,    $25,    $23
-       mulq    $5,     $1,     $19
-       umulh   $5,     $1,     $24
-       cmplt   $19,    $31,    $21
-       cmplt   $24,    $31,    $20
-       addq    $19,    $19,    $19
-       addq    $24,    $24,    $24
-       addq    $24,    $21,    $24
-       addq    $23,    $20,    $23
-       addq    $8,     $19,    $8
-       addq    $22,    $24,    $22
-       cmpult  $8,     $19,    $17
-       cmpult  $22,    $24,    $27
-       addq    $22,    $17,    $22
-       addq    $23,    $27,    $23
-       mulq    $6,     $0,     $18
-       umulh   $6,     $0,     $28
-       cmplt   $18,    $31,    $25
-       cmplt   $28,    $31,    $21
-       addq    $18,    $18,    $18
-       addq    $28,    $28,    $28
-       addq    $28,    $25,    $28
-       addq    $23,    $21,    $23
-       addq    $8,     $18,    $8
-       addq    $22,    $28,    $22
-       cmpult  $8,     $18,    $20
-       cmpult  $22,    $28,    $19
-       addq    $22,    $20,    $22
-       addq    $23,    $19,    $23
-       stq     $8,     48($16)
-       bis     $31,    $31,    $8
-       mulq    $4,     $3,     $24
-       umulh   $4,     $3,     $17
-       cmplt   $24,    $31,    $27
-       cmplt   $17,    $31,    $25
-       addq    $24,    $24,    $24
-       addq    $17,    $17,    $17
-       addq    $17,    $27,    $17
-       addq    $8,     $25,    $8
-       addq    $22,    $24,    $22
-       addq    $23,    $17,    $23
-       cmpult  $22,    $24,    $21
-       cmpult  $23,    $17,    $18
-       addq    $23,    $21,    $23
-       addq    $8,     $18,    $8
-       mulq    $5,     $2,     $28
-       umulh   $5,     $2,     $20
-       cmplt   $28,    $31,    $19
-       cmplt   $20,    $31,    $27
-       addq    $28,    $28,    $28
-       addq    $20,    $20,    $20
-       addq    $20,    $19,    $20
-       addq    $8,     $27,    $8
-       addq    $22,    $28,    $22
-       addq    $23,    $20,    $23
-       cmpult  $22,    $28,    $25
-       cmpult  $23,    $20,    $24
-       addq    $23,    $25,    $23
-       addq    $8,     $24,    $8
-       mulq    $6,     $1,     $17
-       umulh   $6,     $1,     $21
-       cmplt   $17,    $31,    $18
-       cmplt   $21,    $31,    $19
-       addq    $17,    $17,    $17
-       addq    $21,    $21,    $21
-       addq    $21,    $18,    $21
-       addq    $8,     $19,    $8
-       addq    $22,    $17,    $22
-       addq    $23,    $21,    $23
-       cmpult  $22,    $17,    $27
-       cmpult  $23,    $21,    $28
-       addq    $23,    $27,    $23
-       addq    $8,     $28,    $8
-       mulq    $7,     $0,     $20
-       umulh   $7,     $0,     $25
-       cmplt   $20,    $31,    $24
-       cmplt   $25,    $31,    $18
-       addq    $20,    $20,    $20
-       addq    $25,    $25,    $25
-       addq    $25,    $24,    $25
-       addq    $8,     $18,    $8
-       addq    $22,    $20,    $22
-       addq    $23,    $25,    $23
-       cmpult  $22,    $20,    $19
-       cmpult  $23,    $25,    $17
-       addq    $23,    $19,    $23
-       addq    $8,     $17,    $8
-       stq     $22,    56($16)
-       bis     $31,    $31,    $22
-       mulq    $4,     $4,     $21
-       umulh   $4,     $4,     $27
-       addq    $23,    $21,    $23
-       addq    $8,     $27,    $8
-       cmpult  $23,    $21,    $28
-       cmpult  $8,     $27,    $24
-       addq    $8,     $28,    $8
-       addq    $22,    $24,    $22
-       mulq    $5,     $3,     $18
-       umulh   $5,     $3,     $20
-       cmplt   $18,    $31,    $25
-       cmplt   $20,    $31,    $19
-       addq    $18,    $18,    $18
-       addq    $20,    $20,    $20
-       addq    $20,    $25,    $20
-       addq    $22,    $19,    $22
-       addq    $23,    $18,    $23
-       addq    $8,     $20,    $8
-       cmpult  $23,    $18,    $17
-       cmpult  $8,     $20,    $21
-       addq    $8,     $17,    $8
-       addq    $22,    $21,    $22
-       mulq    $6,     $2,     $27
-       umulh   $6,     $2,     $28
-       cmplt   $27,    $31,    $24
-       cmplt   $28,    $31,    $25
-       addq    $27,    $27,    $27
-       addq    $28,    $28,    $28
-       addq    $28,    $24,    $28
-       addq    $22,    $25,    $22
-       addq    $23,    $27,    $23
-       addq    $8,     $28,    $8
-       cmpult  $23,    $27,    $19
-       cmpult  $8,     $28,    $18
-       addq    $8,     $19,    $8
-       addq    $22,    $18,    $22
-       mulq    $7,     $1,     $20
-       umulh   $7,     $1,     $17
-       cmplt   $20,    $31,    $21
-       cmplt   $17,    $31,    $24
-       addq    $20,    $20,    $20
-       addq    $17,    $17,    $17
-       addq    $17,    $21,    $17
-       addq    $22,    $24,    $22
-       addq    $23,    $20,    $23
-       addq    $8,     $17,    $8
-       cmpult  $23,    $20,    $25
-       cmpult  $8,     $17,    $27
-       addq    $8,     $25,    $8
-       addq    $22,    $27,    $22
-       stq     $23,    64($16)
-       bis     $31,    $31,    $23
-       mulq    $5,     $4,     $28
-       umulh   $5,     $4,     $19
-       cmplt   $28,    $31,    $18
-       cmplt   $19,    $31,    $21
-       addq    $28,    $28,    $28
-       addq    $19,    $19,    $19
-       addq    $19,    $18,    $19
-       addq    $23,    $21,    $23
-       addq    $8,     $28,    $8
-       addq    $22,    $19,    $22
-       cmpult  $8,     $28,    $24
-       cmpult  $22,    $19,    $20
-       addq    $22,    $24,    $22
-       addq    $23,    $20,    $23
-       mulq    $6,     $3,     $17
-       umulh   $6,     $3,     $25
-       cmplt   $17,    $31,    $27
-       cmplt   $25,    $31,    $18
-       addq    $17,    $17,    $17
-       addq    $25,    $25,    $25
-       addq    $25,    $27,    $25
-       addq    $23,    $18,    $23
-       addq    $8,     $17,    $8
-       addq    $22,    $25,    $22
-       cmpult  $8,     $17,    $21
-       cmpult  $22,    $25,    $28
-       addq    $22,    $21,    $22
-       addq    $23,    $28,    $23
-       mulq    $7,     $2,     $19
-       umulh   $7,     $2,     $24
-       cmplt   $19,    $31,    $20
-       cmplt   $24,    $31,    $27
-       addq    $19,    $19,    $19
-       addq    $24,    $24,    $24
-       addq    $24,    $20,    $24
-       addq    $23,    $27,    $23
-       addq    $8,     $19,    $8
-       addq    $22,    $24,    $22
-       cmpult  $8,     $19,    $18
-       cmpult  $22,    $24,    $17
-       addq    $22,    $18,    $22
-       addq    $23,    $17,    $23
-       stq     $8,     72($16)
-       bis     $31,    $31,    $8
-       mulq    $5,     $5,     $25
-       umulh   $5,     $5,     $21
-       addq    $22,    $25,    $22
-       addq    $23,    $21,    $23
-       cmpult  $22,    $25,    $28
-       cmpult  $23,    $21,    $20
-       addq    $23,    $28,    $23
-       addq    $8,     $20,    $8
-       mulq    $6,     $4,     $27
-       umulh   $6,     $4,     $19
-       cmplt   $27,    $31,    $24
-       cmplt   $19,    $31,    $18
-       addq    $27,    $27,    $27
-       addq    $19,    $19,    $19
-       addq    $19,    $24,    $19
-       addq    $8,     $18,    $8
-       addq    $22,    $27,    $22
-       addq    $23,    $19,    $23
-       cmpult  $22,    $27,    $17
-       cmpult  $23,    $19,    $25
-       addq    $23,    $17,    $23
-       addq    $8,     $25,    $8
-       mulq    $7,     $3,     $21
-       umulh   $7,     $3,     $28
-       cmplt   $21,    $31,    $20
-       cmplt   $28,    $31,    $24
-       addq    $21,    $21,    $21
-       addq    $28,    $28,    $28
-       addq    $28,    $20,    $28
-       addq    $8,     $24,    $8
-       addq    $22,    $21,    $22
-       addq    $23,    $28,    $23
-       cmpult  $22,    $21,    $18
-       cmpult  $23,    $28,    $27
-       addq    $23,    $18,    $23
-       addq    $8,     $27,    $8
-       stq     $22,    80($16)
-       bis     $31,    $31,    $22
-       mulq    $6,     $5,     $19
-       umulh   $6,     $5,     $17
-       cmplt   $19,    $31,    $25
-       cmplt   $17,    $31,    $20
-       addq    $19,    $19,    $19
-       addq    $17,    $17,    $17
-       addq    $17,    $25,    $17
-       addq    $22,    $20,    $22
-       addq    $23,    $19,    $23
-       addq    $8,     $17,    $8
-       cmpult  $23,    $19,    $24
-       cmpult  $8,     $17,    $21
-       addq    $8,     $24,    $8
-       addq    $22,    $21,    $22
-       mulq    $7,     $4,     $28
-       umulh   $7,     $4,     $18
-       cmplt   $28,    $31,    $27
-       cmplt   $18,    $31,    $25
-       addq    $28,    $28,    $28
-       addq    $18,    $18,    $18
-       addq    $18,    $27,    $18
-       addq    $22,    $25,    $22
-       addq    $23,    $28,    $23
-       addq    $8,     $18,    $8
-       cmpult  $23,    $28,    $20
-       cmpult  $8,     $18,    $19
-       addq    $8,     $20,    $8
-       addq    $22,    $19,    $22
-       stq     $23,    88($16)
-       bis     $31,    $31,    $23
-       mulq    $6,     $6,     $17
-       umulh   $6,     $6,     $24
-       addq    $8,     $17,    $8
-       addq    $22,    $24,    $22
-       cmpult  $8,     $17,    $21
-       cmpult  $22,    $24,    $27
-       addq    $22,    $21,    $22
-       addq    $23,    $27,    $23
-       mulq    $7,     $5,     $25
-       umulh   $7,     $5,     $28
-       cmplt   $25,    $31,    $18
-       cmplt   $28,    $31,    $20
-       addq    $25,    $25,    $25
-       addq    $28,    $28,    $28
-       addq    $28,    $18,    $28
-       addq    $23,    $20,    $23
-       addq    $8,     $25,    $8
-       addq    $22,    $28,    $22
-       cmpult  $8,     $25,    $19
-       cmpult  $22,    $28,    $17
-       addq    $22,    $19,    $22
-       addq    $23,    $17,    $23
-       stq     $8,     96($16)
-       bis     $31,    $31,    $8
-       mulq    $7,     $6,     $24
-       umulh   $7,     $6,     $21
-       cmplt   $24,    $31,    $27
-       cmplt   $21,    $31,    $18
-       addq    $24,    $24,    $24
-       addq    $21,    $21,    $21
-       addq    $21,    $27,    $21
-       addq    $8,     $18,    $8
-       addq    $22,    $24,    $22
-       addq    $23,    $21,    $23
-       cmpult  $22,    $24,    $20
-       cmpult  $23,    $21,    $25
-       addq    $23,    $20,    $23
-       addq    $8,     $25,    $8
-       stq     $22,    104($16)
-       bis     $31,    $31,    $22
-       mulq    $7,     $7,     $28
-       umulh   $7,     $7,     $19
-       addq    $23,    $28,    $23
-       addq    $8,     $19,    $8
-       cmpult  $23,    $28,    $17
-       cmpult  $8,     $19,    $27
-       addq    $8,     $17,    $8
-       addq    $22,    $27,    $22
-       stq     $23,    112($16)
-       stq     $8,     120($16)
-       ret     $31,($26),1
-       .end bn_sqr_comba8
diff --git a/crypto/bn/asm/f.c b/crypto/bn/asm/f.c
deleted file mode 100644 (file)
index bfdccae..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-int abc(a,b,c,d,e,f,g,h,i,j)
-unsigned long a,b,c,d,e,f,g,h,i,j;
-       {
-       gg(g);
-       if (g)
-               gg(h);
-       gg(i);
-       }
diff --git a/crypto/bn/asm/f.elf b/crypto/bn/asm/f.elf
deleted file mode 100644 (file)
index 39d07b7..0000000
+++ /dev/null
@@ -1,2149 +0,0 @@
-       # Don't even think of reading this code 
-       # It was automatically generated by bn-586.pl 
-       # Which is a perl program used to generate the x86 assember for 
-       # any of elf, a.out, BSDI,Win32, or Solaris 
-       # eric <eay@cryptsoft.com> 
-
-       .file   "bn-586.s"
-       .version        "01.01"
-gcc2_compiled.:
-.text
-       .align 16
-.globl bn_mul_add_words
-       .type   bn_mul_add_words,@function
-bn_mul_add_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       xorl    %esi,           %esi
-       movl    20(%esp),       %edi
-       movl    28(%esp),       %ecx
-       movl    24(%esp),       %ebx
-       andl    $4294967288,    %ecx
-       movl    32(%esp),       %ebp
-       pushl   %ecx
-       jz      .L000maw_finish
-.L001maw_loop:
-       movl    %ecx,           (%esp)
-       # Round 0 
-       movl    (%ebx),         %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    (%edi),         %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       # Round 4 
-       movl    4(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    4(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       # Round 8 
-       movl    8(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    8(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       # Round 12 
-       movl    12(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    12(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       # Round 16 
-       movl    16(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    16(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       # Round 20 
-       movl    20(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    20(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       # Round 24 
-       movl    24(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    24(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-       # Round 28 
-       movl    28(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    28(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           28(%edi)
-       movl    %edx,           %esi
-
-       movl    (%esp),         %ecx
-       addl    $32,            %ebx
-       addl    $32,            %edi
-       subl    $8,             %ecx
-       jnz     .L001maw_loop
-.L000maw_finish:
-       movl    32(%esp),       %ecx
-       andl    $7,             %ecx
-       jnz     .L002maw_finish2
-       jmp     .L003maw_end
-.align 16
-.L002maw_finish2:
-       # Tail Round 0 
-       movl    (%ebx),         %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    (%edi),         %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       # Tail Round 1 
-       movl    4(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    4(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       # Tail Round 2 
-       movl    8(%ebx),        %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    8(%edi),        %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       # Tail Round 3 
-       movl    12(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    12(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       # Tail Round 4 
-       movl    16(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    16(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       # Tail Round 5 
-       movl    20(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    20(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       decl    %ecx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       jz      .L003maw_end
-       # Tail Round 6 
-       movl    24(%ebx),       %eax
-       mull    %ebp
-       addl    %esi,           %eax
-       movl    24(%edi),       %esi
-       adcl    $0,             %edx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-.L003maw_end:
-       movl    %esi,           %eax
-       popl    %ecx
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_mul_add_words_end:
-       .size   bn_mul_add_words,.bn_mul_add_words_end-bn_mul_add_words
-.ident "bn_mul_add_words"
-.text
-       .align 16
-.globl bn_mul_words
-       .type   bn_mul_words,@function
-bn_mul_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       xorl    %esi,           %esi
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %ebx
-       movl    28(%esp),       %ebp
-       movl    32(%esp),       %ecx
-       andl    $4294967288,    %ebp
-       jz      .L004mw_finish
-.L005mw_loop:
-       # Round 0 
-       movl    (%ebx),         %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       # Round 4 
-       movl    4(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       # Round 8 
-       movl    8(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       # Round 12 
-       movl    12(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       # Round 16 
-       movl    16(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       # Round 20 
-       movl    20(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       # Round 24 
-       movl    24(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-       # Round 28 
-       movl    28(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           28(%edi)
-       movl    %edx,           %esi
-
-       addl    $32,            %ebx
-       addl    $32,            %edi
-       subl    $8,             %ebp
-       jz      .L004mw_finish
-       jmp     .L005mw_loop
-.L004mw_finish:
-       movl    28(%esp),       %ebp
-       andl    $7,             %ebp
-       jnz     .L006mw_finish2
-       jmp     .L007mw_end
-.align 16
-.L006mw_finish2:
-       # Tail Round 0 
-       movl    (%ebx),         %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           (%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       # Tail Round 1 
-       movl    4(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           4(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       # Tail Round 2 
-       movl    8(%ebx),        %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           8(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       # Tail Round 3 
-       movl    12(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           12(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       # Tail Round 4 
-       movl    16(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           16(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       # Tail Round 5 
-       movl    20(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           20(%edi)
-       movl    %edx,           %esi
-       decl    %ebp
-       jz      .L007mw_end
-       # Tail Round 6 
-       movl    24(%ebx),       %eax
-       mull    %ecx
-       addl    %esi,           %eax
-       adcl    $0,             %edx
-       movl    %eax,           24(%edi)
-       movl    %edx,           %esi
-.L007mw_end:
-       movl    %esi,           %eax
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_mul_words_end:
-       .size   bn_mul_words,.bn_mul_words_end-bn_mul_words
-.ident "bn_mul_words"
-.text
-       .align 16
-.globl bn_sqr_words
-       .type   bn_sqr_words,@function
-bn_sqr_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       movl    20(%esp),       %esi
-       movl    24(%esp),       %edi
-       movl    28(%esp),       %ebx
-       andl    $4294967288,    %ebx
-       jz      .L008sw_finish
-.L009sw_loop:
-       # Round 0 
-       movl    (%edi),         %eax
-       mull    %eax
-       movl    %eax,           (%esi)
-       movl    %edx,           4(%esi)
-       # Round 4 
-       movl    4(%edi),        %eax
-       mull    %eax
-       movl    %eax,           8(%esi)
-       movl    %edx,           12(%esi)
-       # Round 8 
-       movl    8(%edi),        %eax
-       mull    %eax
-       movl    %eax,           16(%esi)
-       movl    %edx,           20(%esi)
-       # Round 12 
-       movl    12(%edi),       %eax
-       mull    %eax
-       movl    %eax,           24(%esi)
-       movl    %edx,           28(%esi)
-       # Round 16 
-       movl    16(%edi),       %eax
-       mull    %eax
-       movl    %eax,           32(%esi)
-       movl    %edx,           36(%esi)
-       # Round 20 
-       movl    20(%edi),       %eax
-       mull    %eax
-       movl    %eax,           40(%esi)
-       movl    %edx,           44(%esi)
-       # Round 24 
-       movl    24(%edi),       %eax
-       mull    %eax
-       movl    %eax,           48(%esi)
-       movl    %edx,           52(%esi)
-       # Round 28 
-       movl    28(%edi),       %eax
-       mull    %eax
-       movl    %eax,           56(%esi)
-       movl    %edx,           60(%esi)
-
-       addl    $32,            %edi
-       addl    $64,            %esi
-       subl    $8,             %ebx
-       jnz     .L009sw_loop
-.L008sw_finish:
-       movl    28(%esp),       %ebx
-       andl    $7,             %ebx
-       jz      .L010sw_end
-       # Tail Round 0 
-       movl    (%edi),         %eax
-       mull    %eax
-       movl    %eax,           (%esi)
-       decl    %ebx
-       movl    %edx,           4(%esi)
-       jz      .L010sw_end
-       # Tail Round 1 
-       movl    4(%edi),        %eax
-       mull    %eax
-       movl    %eax,           8(%esi)
-       decl    %ebx
-       movl    %edx,           12(%esi)
-       jz      .L010sw_end
-       # Tail Round 2 
-       movl    8(%edi),        %eax
-       mull    %eax
-       movl    %eax,           16(%esi)
-       decl    %ebx
-       movl    %edx,           20(%esi)
-       jz      .L010sw_end
-       # Tail Round 3 
-       movl    12(%edi),       %eax
-       mull    %eax
-       movl    %eax,           24(%esi)
-       decl    %ebx
-       movl    %edx,           28(%esi)
-       jz      .L010sw_end
-       # Tail Round 4 
-       movl    16(%edi),       %eax
-       mull    %eax
-       movl    %eax,           32(%esi)
-       decl    %ebx
-       movl    %edx,           36(%esi)
-       jz      .L010sw_end
-       # Tail Round 5 
-       movl    20(%edi),       %eax
-       mull    %eax
-       movl    %eax,           40(%esi)
-       decl    %ebx
-       movl    %edx,           44(%esi)
-       jz      .L010sw_end
-       # Tail Round 6 
-       movl    24(%edi),       %eax
-       mull    %eax
-       movl    %eax,           48(%esi)
-       movl    %edx,           52(%esi)
-.L010sw_end:
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_sqr_words_end:
-       .size   bn_sqr_words,.bn_sqr_words_end-bn_sqr_words
-.ident "bn_sqr_words"
-.text
-       .align 16
-.globl bn_div64
-       .type   bn_div64,@function
-bn_div64:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-       movl    20(%esp),       %edx
-       movl    24(%esp),       %eax
-       movl    28(%esp),       %ebx
-       divl    %ebx
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_div64_end:
-       .size   bn_div64,.bn_div64_end-bn_div64
-.ident "bn_div64"
-.text
-       .align 16
-.globl bn_add_words
-       .type   bn_add_words,@function
-bn_add_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       movl    20(%esp),       %ebx
-       movl    24(%esp),       %esi
-       movl    28(%esp),       %edi
-       movl    32(%esp),       %ebp
-       xorl    %eax,           %eax
-       andl    $4294967288,    %ebp
-       jz      .L011aw_finish
-.L012aw_loop:
-       # Round 0 
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           (%ebx)
-       # Round 1 
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           4(%ebx)
-       # Round 2 
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           8(%ebx)
-       # Round 3 
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           12(%ebx)
-       # Round 4 
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           16(%ebx)
-       # Round 5 
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           20(%ebx)
-       # Round 6 
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-       # Round 7 
-       movl    28(%esi),       %ecx
-       movl    28(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           28(%ebx)
-
-       addl    $32,            %esi
-       addl    $32,            %edi
-       addl    $32,            %ebx
-       subl    $8,             %ebp
-       jnz     .L012aw_loop
-.L011aw_finish:
-       movl    32(%esp),       %ebp
-       andl    $7,             %ebp
-       jz      .L013aw_end
-       # Tail Round 0 
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           (%ebx)
-       jz      .L013aw_end
-       # Tail Round 1 
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           4(%ebx)
-       jz      .L013aw_end
-       # Tail Round 2 
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           8(%ebx)
-       jz      .L013aw_end
-       # Tail Round 3 
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           12(%ebx)
-       jz      .L013aw_end
-       # Tail Round 4 
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           16(%ebx)
-       jz      .L013aw_end
-       # Tail Round 5 
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           20(%ebx)
-       jz      .L013aw_end
-       # Tail Round 6 
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       addl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       addl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-.L013aw_end:
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_add_words_end:
-       .size   bn_add_words,.bn_add_words_end-bn_add_words
-.ident "bn_add_words"
-.text
-       .align 16
-.globl bn_sub_words
-       .type   bn_sub_words,@function
-bn_sub_words:
-       pushl   %ebp
-       pushl   %ebx
-       pushl   %esi
-       pushl   %edi
-
-
-       movl    20(%esp),       %ebx
-       movl    24(%esp),       %esi
-       movl    28(%esp),       %edi
-       movl    32(%esp),       %ebp
-       xorl    %eax,           %eax
-       andl    $4294967288,    %ebp
-       jz      .L014aw_finish
-.L015aw_loop:
-       # Round 0 
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           (%ebx)
-       # Round 1 
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           4(%ebx)
-       # Round 2 
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           8(%ebx)
-       # Round 3 
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           12(%ebx)
-       # Round 4 
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           16(%ebx)
-       # Round 5 
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           20(%ebx)
-       # Round 6 
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-       # Round 7 
-       movl    28(%esi),       %ecx
-       movl    28(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           28(%ebx)
-
-       addl    $32,            %esi
-       addl    $32,            %edi
-       addl    $32,            %ebx
-       subl    $8,             %ebp
-       jnz     .L015aw_loop
-.L014aw_finish:
-       movl    32(%esp),       %ebp
-       andl    $7,             %ebp
-       jz      .L016aw_end
-       # Tail Round 0 
-       movl    (%esi),         %ecx
-       movl    (%edi),         %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           (%ebx)
-       jz      .L016aw_end
-       # Tail Round 1 
-       movl    4(%esi),        %ecx
-       movl    4(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           4(%ebx)
-       jz      .L016aw_end
-       # Tail Round 2 
-       movl    8(%esi),        %ecx
-       movl    8(%edi),        %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           8(%ebx)
-       jz      .L016aw_end
-       # Tail Round 3 
-       movl    12(%esi),       %ecx
-       movl    12(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           12(%ebx)
-       jz      .L016aw_end
-       # Tail Round 4 
-       movl    16(%esi),       %ecx
-       movl    16(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           16(%ebx)
-       jz      .L016aw_end
-       # Tail Round 5 
-       movl    20(%esi),       %ecx
-       movl    20(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       decl    %ebp
-       movl    %ecx,           20(%ebx)
-       jz      .L016aw_end
-       # Tail Round 6 
-       movl    24(%esi),       %ecx
-       movl    24(%edi),       %edx
-       subl    %eax,           %ecx
-       movl    $0,             %eax
-       adcl    %eax,           %eax
-       subl    %edx,           %ecx
-       adcl    $0,             %eax
-       movl    %ecx,           24(%ebx)
-.L016aw_end:
-       popl    %edi
-       popl    %esi
-       popl    %ebx
-       popl    %ebp
-       ret
-.bn_sub_words_end:
-       .size   bn_sub_words,.bn_sub_words_end-bn_sub_words
-.ident "bn_sub_words"
-.text
-       .align 16
-.globl bn_mul_comba8
-       .type   bn_mul_comba8,@function
-bn_mul_comba8:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       # ################## Calculate word 0 
-       xorl    %ebp,           %ebp
-       # mul a[0]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       # saved r[0] 
-       # ################## Calculate word 1 
-       xorl    %ebx,           %ebx
-       # mul a[1]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       # saved r[1] 
-       # ################## Calculate word 2 
-       xorl    %ecx,           %ecx
-       # mul a[2]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[0]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       # saved r[2] 
-       # ################## Calculate word 3 
-       xorl    %ebp,           %ebp
-       # mul a[3]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[1]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[0]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    16(%esi),       %eax
-       # saved r[3] 
-       # ################## Calculate word 4 
-       xorl    %ebx,           %ebx
-       # mul a[4]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[3]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[2]*b[2] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[1]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[4] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    20(%esi),       %eax
-       # saved r[4] 
-       # ################## Calculate word 5 
-       xorl    %ecx,           %ecx
-       # mul a[5]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[4]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[3]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[2]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[0]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    24(%esi),       %eax
-       # saved r[5] 
-       # ################## Calculate word 6 
-       xorl    %ebp,           %ebp
-       # mul a[6]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[5]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[4]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[3]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[1]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[0]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       movl    28(%esi),       %eax
-       # saved r[6] 
-       # ################## Calculate word 7 
-       xorl    %ebx,           %ebx
-       # mul a[7]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[6]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[5]*b[2] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[4]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[3]*b[4] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[2]*b[5] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[1]*b[6] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[7] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           28(%eax)
-       movl    28(%esi),       %eax
-       # saved r[7] 
-       # ################## Calculate word 8 
-       xorl    %ecx,           %ecx
-       # mul a[7]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[6]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[5]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[4]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[3]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[2]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           32(%eax)
-       movl    28(%esi),       %eax
-       # saved r[8] 
-       # ################## Calculate word 9 
-       xorl    %ebp,           %ebp
-       # mul a[7]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[6]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[5]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[4]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[3]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           36(%eax)
-       movl    28(%esi),       %eax
-       # saved r[9] 
-       # ################## Calculate word 10 
-       xorl    %ebx,           %ebx
-       # mul a[7]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[6]*b[4] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    20(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[5]*b[5] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[4]*b[6] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    12(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[3]*b[7] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    16(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           40(%eax)
-       movl    28(%esi),       %eax
-       # saved r[10] 
-       # ################## Calculate word 11 
-       xorl    %ecx,           %ecx
-       # mul a[7]*b[4] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[6]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[5]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    16(%esi),       %eax
-       adcl    %edx,           %ebx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[4]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    20(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           44(%eax)
-       movl    28(%esi),       %eax
-       # saved r[11] 
-       # ################## Calculate word 12 
-       xorl    %ebp,           %ebp
-       # mul a[7]*b[5] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[6]*b[6] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esi),       %eax
-       adcl    %edx,           %ecx
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[5]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    24(%edi),       %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           48(%eax)
-       movl    28(%esi),       %eax
-       # saved r[12] 
-       # ################## Calculate word 13 
-       xorl    %ebx,           %ebx
-       # mul a[7]*b[6] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    24(%esi),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[6]*b[7] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    28(%edi),       %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           52(%eax)
-       movl    28(%esi),       %eax
-       # saved r[13] 
-       # ################## Calculate word 14 
-       xorl    %ecx,           %ecx
-       # mul a[7]*b[7] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       adcl    $0,             %ecx
-       movl    %ebp,           56(%eax)
-       # saved r[14] 
-       # save r[15] 
-       movl    %ebx,           60(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba8_end:
-       .size   bn_mul_comba8,.bn_mul_comba8_end-bn_mul_comba8
-.ident "desasm.pl"
-.text
-       .align 16
-.globl bn_mul_comba4
-       .type   bn_mul_comba4,@function
-bn_mul_comba4:
-       pushl   %esi
-       movl    12(%esp),       %esi
-       pushl   %edi
-       movl    20(%esp),       %edi
-       pushl   %ebp
-       pushl   %ebx
-       xorl    %ebx,           %ebx
-       movl    (%esi),         %eax
-       xorl    %ecx,           %ecx
-       movl    (%edi),         %edx
-       # ################## Calculate word 0 
-       xorl    %ebp,           %ebp
-       # mul a[0]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    (%edi),         %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           (%eax)
-       movl    4(%esi),        %eax
-       # saved r[0] 
-       # ################## Calculate word 1 
-       xorl    %ebx,           %ebx
-       # mul a[1]*b[0] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebp
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[0]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    (%edi),         %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           4(%eax)
-       movl    8(%esi),        %eax
-       # saved r[1] 
-       # ################## Calculate word 2 
-       xorl    %ecx,           %ecx
-       # mul a[2]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[1]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    (%esi),         %eax
-       adcl    %edx,           %ebx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ecx
-       # mul a[0]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    (%edi),         %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           8(%eax)
-       movl    12(%esi),       %eax
-       # saved r[2] 
-       # ################## Calculate word 3 
-       xorl    %ebp,           %ebp
-       # mul a[3]*b[0] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[2]*b[1] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ecx
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebp
-       # mul a[1]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    (%esi),         %eax
-       adcl    %edx,           %ecx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebp
-       # mul a[0]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       movl    4(%edi),        %edx
-       adcl    $0,             %ebp
-       movl    %ebx,           12(%eax)
-       movl    12(%esi),       %eax
-       # saved r[3] 
-       # ################## Calculate word 4 
-       xorl    %ebx,           %ebx
-       # mul a[3]*b[1] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       # mul a[2]*b[2] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    4(%esi),        %eax
-       adcl    %edx,           %ebp
-       movl    12(%edi),       %edx
-       adcl    $0,             %ebx
-       # mul a[1]*b[3] 
-       mull    %edx
-       addl    %eax,           %ecx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebp
-       movl    8(%edi),        %edx
-       adcl    $0,             %ebx
-       movl    %ecx,           16(%eax)
-       movl    12(%esi),       %eax
-       # saved r[4] 
-       # ################## Calculate word 5 
-       xorl    %ecx,           %ecx
-       # mul a[3]*b[2] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    8(%esi),        %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       # mul a[2]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebp
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ebx
-       movl    12(%edi),       %edx
-       adcl    $0,             %ecx
-       movl    %ebp,           20(%eax)
-       movl    12(%esi),       %eax
-       # saved r[5] 
-       # ################## Calculate word 6 
-       xorl    %ebp,           %ebp
-       # mul a[3]*b[3] 
-       mull    %edx
-       addl    %eax,           %ebx
-       movl    20(%esp),       %eax
-       adcl    %edx,           %ecx
-       adcl    $0,             %ebp
-       movl    %ebx,           24(%eax)
-       # saved r[6] 
-       # save r[7] 
-       movl    %ecx,           28(%eax)
-       popl    %ebx
-       popl    %ebp
-       popl    %edi
-       popl    %esi
-       ret
-.bn_mul_comba4_end:
-       .size   bn_mul_comba4,.bn_mul_comba4_end-bn_mul_comba4
-.ident "desasm.pl"
-.text
-       .align 16
-.globl bn_sqr_comba8
-       .type   bn_sqr_comba8,@function
-bn_sqr_comba8:
-       pushl   %esi
-       pushl   %edi
-       pushl   %ebp
-       pushl   %ebx
-       movl    20(%esp),       %edi
-       movl    24(%esp),       %esi
-       xorl    %ebx,           %ebx
-       xorl    %ecx,           %ecx
-      &nbs