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 /sha256_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 'sha256_armv4.S')
-rw-r--r-- | sha256_armv4.S | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/sha256_armv4.S b/sha256_armv4.S index ef1f4854..2cccdfd1 100644 --- a/sha256_armv4.S +++ b/sha256_armv4.S @@ -76,8 +76,6 @@ .code 32 #endif -.extern CRYPTOGAMS_armcap_P - .text .type K256,%object @@ -103,30 +101,24 @@ K256: .word 0 @ terminator .align 5 - .globl sha256_block_data_order .type sha256_block_data_order,%function + sha256_block_data_order: .Lsha256_block_data_order: + #if __ARM_ARCH__<7 && !defined(__thumb2__) sub r3,pc,#8 @ sha256_block_data_order #else adr r3,.Lsha256_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#6 @ len to point at the end of inp stmdb sp!,{r0,r1,r2,r4-r11,lr} ldmia r0,{r4,r5,r6,r7,r8,r9,r10,r11} sub r14,r3,#256+32 @ K256 sub sp,sp,#16*4 @ alloca(X[16]) + .Loop: # if __ARM_ARCH__>=7 ldr r2,[r1],#4 @@ -1889,9 +1881,6 @@ sha256_block_data_order: #endif .size sha256_block_data_order,.-sha256_block_data_order -@ CRYPTOGAMS_armcap_P -.ltorg - #if __ARM_MAX_ARCH__>=7 .arch armv7-a .fpu neon @@ -1901,7 +1890,7 @@ sha256_block_data_order: .align 5 .skip 16 sha256_block_data_order_neon: -.LNEON: + stmdb sp!,{r4,r5,r6,r7,r8,r9,r10,r11,r12,lr} sub r11,sp,#16*4+16 |