summaryrefslogtreecommitdiffstats
path: root/crypto/sha
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2015-12-15 21:43:56 +0100
committerAndy Polyakov <appro@openssl.org>2015-12-21 13:41:47 +0100
commitcfe670732b63b875054aabd965a7bcecc6508657 (patch)
treec4e40406453377cb4a59af9da5007b30300daf69 /crypto/sha
parent79caf5d32366df29f3a6f7371df27963d3943eaa (diff)
sha/asm/sha256-armv4.pl: one of "universal" flags combination didn't compile.
(and unify table address calculation in ARMv8 code path). Reviewed-by: Tim Hudson <tjh@openssl.org>
Diffstat (limited to 'crypto/sha')
-rw-r--r--crypto/sha/asm/sha256-armv4.pl13
1 files changed, 4 insertions, 9 deletions
diff --git a/crypto/sha/asm/sha256-armv4.pl b/crypto/sha/asm/sha256-armv4.pl
index b6b39dcbbb..5e56992d8e 100644
--- a/crypto/sha/asm/sha256-armv4.pl
+++ b/crypto/sha/asm/sha256-armv4.pl
@@ -178,7 +178,6 @@ $code=<<___;
#if defined(__thumb2__)
.syntax unified
.thumb
-# define adrl adr
#else
.code 32
#endif
@@ -469,7 +468,8 @@ $code.=<<___;
.global sha256_block_data_order_neon
.type sha256_block_data_order_neon,%function
-.align 4
+.align 5
+.skip 16
sha256_block_data_order_neon:
.LNEON:
stmdb sp!,{r4-r12,lr}
@@ -606,16 +606,11 @@ $code.=<<___;
sha256_block_data_order_armv8:
.LARMv8:
vld1.32 {$ABCD,$EFGH},[$ctx]
-# ifdef __APPLE__
sub $Ktbl,$Ktbl,#256+32
-# elif defined(__thumb2__)
- adr $Ktbl,.LARMv8
- sub $Ktbl,$Ktbl,#.LARMv8-K256
-# else
- adrl $Ktbl,K256
-# endif
add $len,$inp,$len,lsl#6 @ len to point at the end of inp
+ b .Loop_v8
+.align 4
.Loop_v8:
vld1.8 {@MSG[0]-@MSG[1]},[$inp]!
vld1.8 {@MSG[2]-@MSG[3]},[$inp]!