Loading crypto/bn/asm/sparcv9-mont.pl +7 −5 Original line number Diff line number Diff line Loading @@ -260,24 +260,25 @@ $fname: srl $npj,30,%o0 ! boundary condition... brz,pn %o0,.Lcopy ! ... is met subcc %g0,%g0,%g0 ! clear %icc.c nop .align 16,0x1000000 ba .Lsub subcc %g0,%g0,%g0 ! clear %icc.c .align 16 .Lsub: ld [$tp+%o7],%o0 ld [$np+%o7],%o1 subccc %o0,%o1,%o1 ! tp[j]-np[j] st %o1,[$rp+%o7] add $rp,%o7,$i add %o7,4,%o7 brnz %o7,.Lsub nop st %o1,[$i] subc $car2,0,$car2 ! handle upmost overflow bit and $tp,$car2,$ap andn $rp,$car2,$np or $ap,$np,$ap sub %g0,$num,%o7 .align 16,0x1000000 .Lcopy: ld [$ap+%o7],%o0 ! copy or in-place refresh st %g0,[$tp+%o7] ! zap tp Loading Loading @@ -603,6 +604,7 @@ $code.=<<___; .type $fname,#function .size $fname,(.-$fname) .asciz "Montgomery Multipltication for SPARCv9, CRYPTOGAMS by <appro\@openssl.org>" .align 32 ___ $code =~ s/\`([^\`]*)\`/eval($1)/gem; print $code; Loading crypto/bn/asm/sparcv9a-mont.pl +9 −5 Original line number Diff line number Diff line Loading @@ -353,7 +353,7 @@ $fname: bz,pn %icc,.L1stskip std $nlod,[%sp+$bias+$frame+24] .align 32,0x1000000 .align 32 ! incidentally already aligned ! .L1st: add $ap,$j,%o4 add $np,$j,%o5 Loading Loading @@ -805,8 +805,10 @@ $fname: orn %g0,%g0,%g4 brz,pn %o1,.Lcopy ! ... is met sub %g0,$num,%o7 ! n=-num ba .Lsub nop .align 32,0x1000000 .align 32 .Lsub: ldx [$tp+%o7],%o0 add $np,%o7,%g1 Loading @@ -822,8 +824,10 @@ $fname: st %o3,[%g1+4] subc $carry,0,%g4 sub %g0,$num,%o7 ! n=-num ba .Lcopy nop .align 32,0x1000000 .align 32 .Lcopy: ldx [$tp+%o7],%o0 add $rp,%o7,%g1 Loading @@ -842,7 +846,6 @@ $fname: st %o1,[%g1+4] sub %g0,$num,%o7 ! n=-num .align 32,0x1000000 .Lzap: stx %g0,[$ap_l+%o7] stx %g0,[$ap_h+%o7] Loading @@ -862,6 +865,7 @@ $fname: .type $fname,#function .size $fname,(.-$fname) .asciz "Montgomery Multipltication for UltraSPARC, CRYPTOGAMS by <appro\@openssl.org>" .align 32 ___ $code =~ s/\`([^\`]*)\`/eval($1)/gem; Loading Loading
crypto/bn/asm/sparcv9-mont.pl +7 −5 Original line number Diff line number Diff line Loading @@ -260,24 +260,25 @@ $fname: srl $npj,30,%o0 ! boundary condition... brz,pn %o0,.Lcopy ! ... is met subcc %g0,%g0,%g0 ! clear %icc.c nop .align 16,0x1000000 ba .Lsub subcc %g0,%g0,%g0 ! clear %icc.c .align 16 .Lsub: ld [$tp+%o7],%o0 ld [$np+%o7],%o1 subccc %o0,%o1,%o1 ! tp[j]-np[j] st %o1,[$rp+%o7] add $rp,%o7,$i add %o7,4,%o7 brnz %o7,.Lsub nop st %o1,[$i] subc $car2,0,$car2 ! handle upmost overflow bit and $tp,$car2,$ap andn $rp,$car2,$np or $ap,$np,$ap sub %g0,$num,%o7 .align 16,0x1000000 .Lcopy: ld [$ap+%o7],%o0 ! copy or in-place refresh st %g0,[$tp+%o7] ! zap tp Loading Loading @@ -603,6 +604,7 @@ $code.=<<___; .type $fname,#function .size $fname,(.-$fname) .asciz "Montgomery Multipltication for SPARCv9, CRYPTOGAMS by <appro\@openssl.org>" .align 32 ___ $code =~ s/\`([^\`]*)\`/eval($1)/gem; print $code; Loading
crypto/bn/asm/sparcv9a-mont.pl +9 −5 Original line number Diff line number Diff line Loading @@ -353,7 +353,7 @@ $fname: bz,pn %icc,.L1stskip std $nlod,[%sp+$bias+$frame+24] .align 32,0x1000000 .align 32 ! incidentally already aligned ! .L1st: add $ap,$j,%o4 add $np,$j,%o5 Loading Loading @@ -805,8 +805,10 @@ $fname: orn %g0,%g0,%g4 brz,pn %o1,.Lcopy ! ... is met sub %g0,$num,%o7 ! n=-num ba .Lsub nop .align 32,0x1000000 .align 32 .Lsub: ldx [$tp+%o7],%o0 add $np,%o7,%g1 Loading @@ -822,8 +824,10 @@ $fname: st %o3,[%g1+4] subc $carry,0,%g4 sub %g0,$num,%o7 ! n=-num ba .Lcopy nop .align 32,0x1000000 .align 32 .Lcopy: ldx [$tp+%o7],%o0 add $rp,%o7,%g1 Loading @@ -842,7 +846,6 @@ $fname: st %o1,[%g1+4] sub %g0,$num,%o7 ! n=-num .align 32,0x1000000 .Lzap: stx %g0,[$ap_l+%o7] stx %g0,[$ap_h+%o7] Loading @@ -862,6 +865,7 @@ $fname: .type $fname,#function .size $fname,(.-$fname) .asciz "Montgomery Multipltication for UltraSPARC, CRYPTOGAMS by <appro\@openssl.org>" .align 32 ___ $code =~ s/\`([^\`]*)\`/eval($1)/gem; Loading