bn/asm/rsaz-avx2.pl: Windows-specific fix.
authorAndy Polyakov <appro@openssl.org>
Fri, 12 Jul 2013 16:59:17 +0000 (18:59 +0200)
committerAndy Polyakov <appro@openssl.org>
Fri, 12 Jul 2013 17:01:23 +0000 (19:01 +0200)
(cherry picked from commit 5c57c69f9ebcc933161a24d77f87f17011c9977b)

crypto/bn/asm/rsaz-avx2.pl

index e629ab7c67fddf7e49e856cd8ecb4709b565bd4f..2d9e2399125d1e44092933623cb4b80bc95a6a7e 100755 (executable)
@@ -70,7 +70,7 @@ if (`$ENV{CC} -Wa,-v -c -o /dev/null -x assembler /dev/null 2>&1`
 
 if (!$avx && $win64 && ($flavour =~ /nasm/ || $ENV{ASM} =~ /nasm/) &&
            `nasm -v 2>&1` =~ /NASM version ([2-9]\.[0-9]+)/) {
-       $avx = ($1>=2.09) + ($1>=2.11);
+       $avx = ($1>=2.09) + ($1>=2.10);
 }
 
 if (!$avx && $win64 && ($flavour =~ /masm/ || $ENV{ASM} =~ /ml64/) &&
@@ -129,6 +129,8 @@ my $tp1=$r3;
 $np="%r13";                    # reassigned argument
 
 $code.=<<___;
+.text
+
 .globl rsaz_1024_sqr_avx2
 .type  rsaz_1024_sqr_avx2,\@function,5
 .align 64
@@ -263,7 +265,7 @@ $code.=<<___;
 
        xor     $tmp, $tmp
        mov     \$4, $i
-       jmp     .Lentry_1024
+       jmp     .Lsqr_entry_1024
 ___
 $TEMP0=$Y1;
 $TEMP2=$Y2;
@@ -299,7 +301,7 @@ $code.=<<___;
        vpmuludq        32*7-128($aap), $B1, $ACC8
         vpbroadcastq   32*2-128($ap,$tmp), $B1
        vpaddq          $TEMP2, $ACC8, $ACC8
-.Lentry_1024:
+.Lsqr_entry_1024:
        vmovdqu         $ACC0, 32*0(%rsp,$tmp)  # 32*0-192($tp0,$tmp)
        vmovdqu         $ACC1, 32*1(%rsp,$tmp)  # 32*1-192($tp0,$tmp)