diff options
author | Jeffrey Walton <noloader@gmail.com> | 2019-05-26 22:10:26 -0400 |
---|---|---|
committer | Jeffrey Walton <noloader@gmail.com> | 2019-05-26 22:10:26 -0400 |
commit | 81da61fe7b32ab771d121cc8c889c61dfb2e60a0 (patch) | |
tree | 49c84a70304eb8f68a11925df2f2e65fc6314f51 /sha512_armv4.S | |
parent | d4b533a60fa82f40eb8019214bb525bb7a7b20ff (diff) | |
download | cryptopp-git-81da61fe7b32ab771d121cc8c889c61dfb2e60a0.tar.gz |
Breakout sha_block_data_order and sha_block_data_order_neon (GH #847)
Diffstat (limited to 'sha512_armv4.S')
-rw-r--r-- | sha512_armv4.S | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/sha512_armv4.S b/sha512_armv4.S index 7a9e2ac2..d7181a0e 100644 --- a/sha512_armv4.S +++ b/sha512_armv4.S @@ -87,8 +87,6 @@ .code 32 #endif -.extern CRYPTOGAMS_armcap_P - .text .type K512,%object @@ -138,24 +136,19 @@ K512: .skip 32 +.align 5 .globl sha512_block_data_order .type sha512_block_data_order,%function + sha512_block_data_order: .Lsha512_block_data_order: + #if __ARM_ARCH__<7 && !defined(__thumb2__) sub r3,pc,#8 @ sha512_block_data_order #else adr r3,.Lsha512_block_data_order #endif -#if __ARM_MAX_ARCH__>=7 - ldr r12,=CRYPTOGAMS_armcap_P - ldr r12,[r12] @ CRYPTOGAMS_armcap_P - - tst r12,#ARMV7_NEON - bne .LNEON -#endif - add r2,r1,r2,lsl#7 @ len to point at the end of inp stmdb sp!,{r4,r5,r6,r7,r8,r9,r10,r11,r12,lr} sub r14,r3,#672 @ K512 @@ -535,18 +528,16 @@ sha512_block_data_order: #endif .size sha512_block_data_order,.-sha512_block_data_order -@ CRYPTOGAMS_armcap_P -.ltorg - #if __ARM_MAX_ARCH__>=7 .arch armv7-a .fpu neon +.align 4 .globl sha512_block_data_order_neon .type sha512_block_data_order_neon,%function -.align 4 + sha512_block_data_order_neon: -.LNEON: + dmb @ errata #451034 on early Cortex A8 add r2,r1,r2,lsl#7 @ len to point at the end of inp adr r3,K512 |