[openssl-commits] [openssl] OpenSSL_1_1_0-stable update

Andy Polyakov appro at openssl.org
Wed Apr 18 17:49:48 UTC 2018


The branch OpenSSL_1_1_0-stable has been updated
       via  e88f5d57efa5031e4863d455e2b5a9f7f4096c8b (commit)
      from  87b315965296273750ab69728648bbff331e1687 (commit)


- Log -----------------------------------------------------------------
commit e88f5d57efa5031e4863d455e2b5a9f7f4096c8b
Author: Rahul Chaudhry <rahulchaudhry at google.com>
Date:   Fri Apr 13 10:42:13 2018 -0700

    poly1305/asm/poly1305-armv4.pl: remove unintentional relocation.
    
    Branch to global symbol results in reference to PLT, and when compiling
    for THUMB-2 - in a R_ARM_THM_JUMP19 relocation. Some linkers don't
    support this relocation (ld.gold), while others can end up truncating
    the relocation to fit (ld.bfd).
    
    Convert this branch through PLT into a direct branch that the assembler
    can resolve locally.
    
    See https://github.com/android-ndk/ndk/issues/337 for background.
    
    The current workaround is to disable poly1305 optimization assembly,
    which is not optimal and can be reverted after this patch:
    https://github.com/freedesktop/gstreamer-cerbero/commit/beab607d2b1ff23c41b7e01aa9c64be5e247d1e6
    
    CLA: trivial
    
    Reviewed-by: Andy Polyakov <appro at openssl.org>
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/5949)
    
    (cherry picked from commit 5bb1cd2292b388263a0cc05392bb99141212aa53)

-----------------------------------------------------------------------

Summary of changes:
 crypto/poly1305/asm/poly1305-armv4.pl | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/crypto/poly1305/asm/poly1305-armv4.pl b/crypto/poly1305/asm/poly1305-armv4.pl
index fc899ce..699021f 100755
--- a/crypto/poly1305/asm/poly1305-armv4.pl
+++ b/crypto/poly1305/asm/poly1305-armv4.pl
@@ -186,6 +186,7 @@ $code.=<<___;
 .type	poly1305_blocks,%function
 .align	5
 poly1305_blocks:
+.Lpoly1305_blocks:
 	stmdb	sp!,{r3-r11,lr}
 
 	ands	$len,$len,#-16
@@ -677,7 +678,7 @@ poly1305_blocks_neon:
 	cmp	$len,#64
 	bhs	.Lenter_neon
 	tst	ip,ip			@ is_base2_26?
-	beq	poly1305_blocks
+	beq	.Lpoly1305_blocks
 
 .Lenter_neon:
 	stmdb	sp!,{r4-r7}


More information about the openssl-commits mailing list