Minor clean-up in crypto/bn/asm.
authorAndy Polyakov <appro@openssl.org>
Fri, 29 Dec 2006 11:05:20 +0000 (11:05 +0000)
committerAndy Polyakov <appro@openssl.org>
Fri, 29 Dec 2006 11:05:20 +0000 (11:05 +0000)
crypto/bn/asm/alpha-mont.pl
crypto/bn/asm/x86_64-mont.pl

index a25f5cb085c07e10f6acd006221edbee7c2cd23b..d84093754804d82484aca34cabab8952816e8835 100644 (file)
@@ -65,6 +65,7 @@ bn_mul_mont:
        .prologue 0
 
        .align  4
+       .set    reorder
        sextl   $num,$num
        mov     0,v0
        cmplt   $num,4,AT
@@ -104,6 +105,7 @@ bn_mul_mont:
        s8addq  $j,$np,$nj
 .align 4
 .L1st:
+       .set    noreorder
        ldq     $aj,($aj)
        addl    $j,1,$j
        ldq     $nj,($nj)
@@ -133,6 +135,7 @@ bn_mul_mont:
        nop
        unop
        bne     $tj,.L1st
+       .set    reorder
 
        addq    $alo,$hi0,$lo0
        addq    $nlo,$hi1,$lo1
@@ -187,9 +190,9 @@ bn_mul_mont:
        mulq    $nj,$m1,$nlo
        s8addq  $j,$ap,$aj
        umulh   $nj,$m1,$nhi
-       .set    noreorder
 .align 4
 .Linner:
+       .set    noreorder
        ldq     $tj,8($tp)      #L0
        nop                     #U1
        ldq     $aj,($aj)       #L1
@@ -224,6 +227,7 @@ bn_mul_mont:
        addq    $hi1,v0,$hi1    #U1
        stq     $lo1,-8($tp)    #L1
        bne     $tj,.Linner     #U0
+       .set    reorder
 
        ldq     $tj,8($tp)
        addq    $alo,$hi0,$lo0
@@ -304,7 +308,9 @@ bn_mul_mont:
        mov     1,v0
 
 .align 4
-.Lexit:        mov     fp,sp
+.Lexit:
+       .set    noreorder
+       mov     fp,sp
        /*ldq   ra,0(sp)*/
        ldq     s3,8(sp)
        ldq     s4,16(sp)
index 84fea1a059bd5f5eec03fa19c427a1d0912ebb32..bc3fa83cf7398642383e23fac9be4a29b22bcdac 100755 (executable)
 # dedicated squaring routine can provide further improvement...
 
 $output=shift;
-open STDOUT,"| $^X ../perlasm/x86_64-xlate.pl $output";
+
+$0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1;
+( $xlate="${dir}x86_64-xlate.pl" and -f $xlate ) or
+( $xlate="${dir}../../perlasm/x86_64-xlate.pl" and -f $xlate) or
+die "can't locate x86_64-xlate.pl";
+
+open STDOUT,"| $^X $xlate $output";
 
 # int bn_mul_mont(
 $rp="%rdi";    # BN_ULONG *rp,