[openssl-commits] [openssl] master update
The branch master has been updated via ce24d2ed232a095349886aecc8cb959d5dda8342 (commit) from 0ee05b736aa41bd2a10a226afa04ec477aa4ac7d (commit) - Log - commit ce24d2ed232a095349886aecc8cb959d5dda8342 Author: Andy PolyakovDate: Fri Nov 13 23:52:13 2015 +0100 aes/asm/vpaes-ppc.pl: eliminate overhung stores in misaligned cases. Reviewed-by: Richard Levitte --- Summary of changes: crypto/aes/asm/vpaes-ppc.pl | 198 ++-- 1 file changed, 136 insertions(+), 62 deletions(-) diff --git a/crypto/aes/asm/vpaes-ppc.pl b/crypto/aes/asm/vpaes-ppc.pl index 7fda60e..1759ae9 100644 --- a/crypto/aes/asm/vpaes-ppc.pl +++ b/crypto/aes/asm/vpaes-ppc.pl @@ -337,24 +337,27 @@ Lenc_entry: addi$inp, $inp, 15 # 15 is not a typo ?lvsr $outperm, 0, $out ?lvsl $keyperm, 0, $key # prepare for unaligned access -vnor $outmask, v7, v7# 0xff..ff lvx $inptail, 0, $inp # redundant in aligned case -?vperm $outmask, v7, $outmask, $outperm -lvx$outhead, 0, $out ?vperm v0, v0, $inptail, $inpperm bl _vpaes_encrypt_core + andi. r8, $out, 15 + li r9, 16 + beq Lenc_out_aligned + vperm v0, v0, v0, $outperm# rotate right/left - vselv1, $outhead, v0, $outmask - vmr $outhead, v0 - stvxv1, 0, $out - addi$out, $out, 15 # 15 is not a typo - + mtctr r9 +Lenc_out_unaligned: + stvebx v0, 0, $out + addi$out, $out, 1 + bdnzLenc_out_unaligned + b Lenc_done - lvx v1, 0, $out # redundant in aligned case - vselv1, $outhead, v1, $outmask - stvxv1, 0, $out +.align 4 +Lenc_out_aligned: + stvxv0, 0, $out +Lenc_done: li r10,`15+6*$SIZE_T` li r11,`31+6*$SIZE_T` @@ -566,24 +569,27 @@ Ldec_entry: addi$inp, $inp, 15 # 15 is not a typo ?lvsr $outperm, 0, $out ?lvsl $keyperm, 0, $key -vnor $outmask, v7, v7# 0xff..ff lvx $inptail, 0, $inp # redundant in aligned case -?vperm $outmask, v7, $outmask, $outperm -lvx$outhead, 0, $out ?vperm v0, v0, $inptail, $inpperm bl _vpaes_decrypt_core + andi. r8, $out, 15 + li r9, 16 + beq Ldec_out_aligned + vperm v0, v0, v0, $outperm# rotate right/left - vselv1, $outhead, v0, $outmask - vmr $outhead, v0 - stvxv1, 0, $out - addi$out, $out, 15 # 15 is not a typo - + mtctr r9 +Ldec_out_unaligned: + stvebx v0, 0, $out + addi$out, $out, 1 + bdnzLdec_out_unaligned + b Ldec_done - lvx v1, 0, $out # redundant in aligned case - vselv1, $outhead, v1, $outmask - stvxv1, 0, $out +.align 4 +Ldec_out_aligned: + stvxv0, 0, $out +Ldec_done: li r10,`15+6*$SIZE_T` li r11,`31+6*$SIZE_T` @@ -658,11 +664,11 @@ Ldec_entry: $PUSH r0, `$FRAME+$SIZE_T*2+$LRSAVE`($sp) and r30, r5, r9 # copy length&-16 + andi. r9, $out, 15# is $out aligned? mr r5, r6 # copy pointer to key mr r31, r7 # copy pointer to iv - blt Lcbc_abort - cmpwi r8, 0 # test direction li r6, -1 + mcrfcr1, cr0# put aside $out alignment flag mr r7, r12 # copy vrsave mtspr 256, r6 # preserve all AltiVec registers @@ -672,6 +678,7 @@ Ldec_entry: lvx v25, r9, r31 ?vperm v24, v24, v25, $inpperm + cmpwi r8, 0 # test direction neg r8, $inp# prepare for unaligned access vxor v7, v7, v7 ?lvsl $keyperm, 0, $key @@ -681,13 +688,37 @@ Ldec_entry: lvx $inptail, 0, $inp ?vperm $outmask, v7, $outmask, $outperm addi$inp, $inp, 15 # 15 is not a typo -lvx$outhead, 0, $out beq Lcbc_decrypt bl _vpaes_encrypt_preheat li r0, 16 + beq cr1, Lcbc_enc_loop # $out is aligned + + vmr v0, $inptail + lvx $inptail, 0, $inp + addi$inp, $inp, 16 + ?vperm v0, v0, $inptail, $inpperm + vxorv0, v0, v24 # ^= iv + + bl _vpaes_encrypt_core + + andi. r8, $out, 15 + vmr v24, v0 # put aside iv + sub r9, $out, r8 + vperm
[openssl-commits] [openssl] OpenSSL_1_0_2-stable update
The branch OpenSSL_1_0_2-stable has been updated via bc2ab6ed2f07d56dd0afee2a2dfb631a27548934 (commit) from bef7693860b4869613a6a4e82265ba82f9c0d460 (commit) - Log - commit bc2ab6ed2f07d56dd0afee2a2dfb631a27548934 Author: Andy PolyakovDate: Fri Nov 13 23:52:13 2015 +0100 aes/asm/vpaes-ppc.pl: eliminate overhung stores in misaligned cases. Reviewed-by: Richard Levitte (cherry picked from commit ce24d2ed232a095349886aecc8cb959d5dda8342) --- Summary of changes: crypto/aes/asm/vpaes-ppc.pl | 198 ++-- 1 file changed, 136 insertions(+), 62 deletions(-) diff --git a/crypto/aes/asm/vpaes-ppc.pl b/crypto/aes/asm/vpaes-ppc.pl index 7fda60e..1759ae9 100644 --- a/crypto/aes/asm/vpaes-ppc.pl +++ b/crypto/aes/asm/vpaes-ppc.pl @@ -337,24 +337,27 @@ Lenc_entry: addi$inp, $inp, 15 # 15 is not a typo ?lvsr $outperm, 0, $out ?lvsl $keyperm, 0, $key # prepare for unaligned access -vnor $outmask, v7, v7# 0xff..ff lvx $inptail, 0, $inp # redundant in aligned case -?vperm $outmask, v7, $outmask, $outperm -lvx$outhead, 0, $out ?vperm v0, v0, $inptail, $inpperm bl _vpaes_encrypt_core + andi. r8, $out, 15 + li r9, 16 + beq Lenc_out_aligned + vperm v0, v0, v0, $outperm# rotate right/left - vselv1, $outhead, v0, $outmask - vmr $outhead, v0 - stvxv1, 0, $out - addi$out, $out, 15 # 15 is not a typo - + mtctr r9 +Lenc_out_unaligned: + stvebx v0, 0, $out + addi$out, $out, 1 + bdnzLenc_out_unaligned + b Lenc_done - lvx v1, 0, $out # redundant in aligned case - vselv1, $outhead, v1, $outmask - stvxv1, 0, $out +.align 4 +Lenc_out_aligned: + stvxv0, 0, $out +Lenc_done: li r10,`15+6*$SIZE_T` li r11,`31+6*$SIZE_T` @@ -566,24 +569,27 @@ Ldec_entry: addi$inp, $inp, 15 # 15 is not a typo ?lvsr $outperm, 0, $out ?lvsl $keyperm, 0, $key -vnor $outmask, v7, v7# 0xff..ff lvx $inptail, 0, $inp # redundant in aligned case -?vperm $outmask, v7, $outmask, $outperm -lvx$outhead, 0, $out ?vperm v0, v0, $inptail, $inpperm bl _vpaes_decrypt_core + andi. r8, $out, 15 + li r9, 16 + beq Ldec_out_aligned + vperm v0, v0, v0, $outperm# rotate right/left - vselv1, $outhead, v0, $outmask - vmr $outhead, v0 - stvxv1, 0, $out - addi$out, $out, 15 # 15 is not a typo - + mtctr r9 +Ldec_out_unaligned: + stvebx v0, 0, $out + addi$out, $out, 1 + bdnzLdec_out_unaligned + b Ldec_done - lvx v1, 0, $out # redundant in aligned case - vselv1, $outhead, v1, $outmask - stvxv1, 0, $out +.align 4 +Ldec_out_aligned: + stvxv0, 0, $out +Ldec_done: li r10,`15+6*$SIZE_T` li r11,`31+6*$SIZE_T` @@ -658,11 +664,11 @@ Ldec_entry: $PUSH r0, `$FRAME+$SIZE_T*2+$LRSAVE`($sp) and r30, r5, r9 # copy length&-16 + andi. r9, $out, 15# is $out aligned? mr r5, r6 # copy pointer to key mr r31, r7 # copy pointer to iv - blt Lcbc_abort - cmpwi r8, 0 # test direction li r6, -1 + mcrfcr1, cr0# put aside $out alignment flag mr r7, r12 # copy vrsave mtspr 256, r6 # preserve all AltiVec registers @@ -672,6 +678,7 @@ Ldec_entry: lvx v25, r9, r31 ?vperm v24, v24, v25, $inpperm + cmpwi r8, 0 # test direction neg r8, $inp# prepare for unaligned access vxor v7, v7, v7 ?lvsl $keyperm, 0, $key @@ -681,13 +688,37 @@ Ldec_entry: lvx $inptail, 0, $inp ?vperm $outmask, v7, $outmask, $outperm addi$inp, $inp, 15 # 15 is not a typo -lvx$outhead, 0, $out beq Lcbc_decrypt bl _vpaes_encrypt_preheat li r0, 16 + beq cr1, Lcbc_enc_loop # $out is aligned + + vmr v0, $inptail + lvx $inptail, 0, $inp + addi$inp, $inp, 16 + ?vperm v0, v0, $inptail, $inpperm + vxorv0, v0, v24 # ^= iv + + bl _vpaes_encrypt_core + + andi. r8, $out, 15 + vmr
[openssl-commits] [openssl] OpenSSL_1_0_1-stable update
The branch OpenSSL_1_0_1-stable has been updated via e71aab1c02e6a47ec56b1e341e80d09797d3d4de (commit) from b77390a2ff1d8c707ea5aad4bd30cedbccedee5b (commit) - Log - commit e71aab1c02e6a47ec56b1e341e80d09797d3d4de Author: Rich SalzDate: Wed Nov 18 16:58:40 2015 -0500 Fix release in README. Reviewed-by: Steve Marquess --- Summary of changes: README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index cc20f57..edf5138 100644 --- a/README +++ b/README @@ -1,5 +1,5 @@ - OpenSSL 1.1.0-dev + OpenSSL 1.0.1q-dev Copyright (c) 1998-2015 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits
[openssl-commits] [openssl] OpenSSL_1_0_2-stable update
The branch OpenSSL_1_0_2-stable has been updated via 01d625e2c3c68038f7e5001421d291f124de4d8f (commit) from bc2ab6ed2f07d56dd0afee2a2dfb631a27548934 (commit) - Log - commit 01d625e2c3c68038f7e5001421d291f124de4d8f Author: Rich SalzDate: Wed Nov 18 17:00:02 2015 -0500 Fix release in README Reviewed-by: Steve Marquess --- Summary of changes: README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index cc20f57..8754c02 100644 --- a/README +++ b/README @@ -1,5 +1,5 @@ - OpenSSL 1.1.0-dev + OpenSSL 1.0.1e-dev Copyright (c) 1998-2015 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson _ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits