update master-with-bazel from master branch
This commit is contained in:
@@ -31,7 +31,7 @@ Lone:
|
||||
.long 1,0,0,0
|
||||
#if __ARM_MAX_ARCH__>=7
|
||||
LOPENSSL_armcap:
|
||||
.word OPENSSL_armcap_P-LChaCha20_ctr32
|
||||
.word OPENSSL_armcap_P-Lsigma
|
||||
#else
|
||||
.word -1
|
||||
#endif
|
||||
@@ -46,11 +46,7 @@ _ChaCha20_ctr32:
|
||||
LChaCha20_ctr32:
|
||||
ldr r12,[sp,#0] @ pull pointer to counter and nonce
|
||||
stmdb sp!,{r0,r1,r2,r4-r11,lr}
|
||||
#if __ARM_ARCH<7 && !defined(__thumb2__)
|
||||
sub r14,pc,#16 @ _ChaCha20_ctr32
|
||||
#else
|
||||
adr r14,LChaCha20_ctr32
|
||||
#endif
|
||||
adr r14,Lsigma
|
||||
cmp r2,#0 @ len==0?
|
||||
#ifdef __thumb2__
|
||||
itt eq
|
||||
@@ -60,7 +56,7 @@ LChaCha20_ctr32:
|
||||
#if __ARM_MAX_ARCH__>=7
|
||||
cmp r2,#192 @ test len
|
||||
bls Lshort
|
||||
ldr r4,[r14,#-32]
|
||||
ldr r4,[r14,#32]
|
||||
ldr r4,[r14,r4]
|
||||
# ifdef __APPLE__
|
||||
ldr r4,[r4]
|
||||
@@ -71,7 +67,6 @@ Lshort:
|
||||
#endif
|
||||
ldmia r12,{r4,r5,r6,r7} @ load counter and nonce
|
||||
sub sp,sp,#4*(16) @ off-load area
|
||||
sub r14,r14,#64 @ Lsigma
|
||||
stmdb sp!,{r4,r5,r6,r7} @ copy counter and nonce
|
||||
ldmia r3,{r4,r5,r6,r7,r8,r9,r10,r11} @ load key
|
||||
ldmia r14,{r0,r1,r2,r3} @ load sigma
|
||||
|
||||
@@ -103,11 +103,7 @@ LOPENSSL_armcap:
|
||||
#endif
|
||||
_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 && !defined(__KERNEL__)
|
||||
ldr r12,LOPENSSL_armcap
|
||||
ldr r12,[r3,r12] @ OPENSSL_armcap_P
|
||||
@@ -122,6 +118,8 @@ Lsha256_block_data_order:
|
||||
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}
|
||||
@ TODO(davidben): When the OPENSSL_armcap logic above is removed,
|
||||
@ replace this with a simple ADR.
|
||||
sub r14,r3,#256+32 @ K256
|
||||
sub sp,sp,#16*4 @ alloca(X[16])
|
||||
Loop:
|
||||
|
||||
@@ -150,11 +150,7 @@ LOPENSSL_armcap:
|
||||
#endif
|
||||
_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 && !defined(__KERNEL__)
|
||||
ldr r12,LOPENSSL_armcap
|
||||
ldr r12,[r3,r12] @ OPENSSL_armcap_P
|
||||
@@ -166,6 +162,8 @@ Lsha512_block_data_order:
|
||||
#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}
|
||||
@ TODO(davidben): When the OPENSSL_armcap logic above is removed,
|
||||
@ replace this with a simple ADR.
|
||||
sub r14,r3,#672 @ K512
|
||||
sub sp,sp,#9*8
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
.long 1,0,0,0
|
||||
#if __ARM_MAX_ARCH__>=7
|
||||
.LOPENSSL_armcap:
|
||||
.word OPENSSL_armcap_P-.LChaCha20_ctr32
|
||||
.word OPENSSL_armcap_P-.Lsigma
|
||||
#else
|
||||
.word -1
|
||||
#endif
|
||||
@@ -44,11 +44,7 @@ ChaCha20_ctr32:
|
||||
.LChaCha20_ctr32:
|
||||
ldr r12,[sp,#0] @ pull pointer to counter and nonce
|
||||
stmdb sp!,{r0,r1,r2,r4-r11,lr}
|
||||
#if __ARM_ARCH<7 && !defined(__thumb2__)
|
||||
sub r14,pc,#16 @ ChaCha20_ctr32
|
||||
#else
|
||||
adr r14,.LChaCha20_ctr32
|
||||
#endif
|
||||
adr r14,.Lsigma
|
||||
cmp r2,#0 @ len==0?
|
||||
#ifdef __thumb2__
|
||||
itt eq
|
||||
@@ -58,7 +54,7 @@ ChaCha20_ctr32:
|
||||
#if __ARM_MAX_ARCH__>=7
|
||||
cmp r2,#192 @ test len
|
||||
bls .Lshort
|
||||
ldr r4,[r14,#-32]
|
||||
ldr r4,[r14,#32]
|
||||
ldr r4,[r14,r4]
|
||||
# ifdef __APPLE__
|
||||
ldr r4,[r4]
|
||||
@@ -69,7 +65,6 @@ ChaCha20_ctr32:
|
||||
#endif
|
||||
ldmia r12,{r4,r5,r6,r7} @ load counter and nonce
|
||||
sub sp,sp,#4*(16) @ off-load area
|
||||
sub r14,r14,#64 @ .Lsigma
|
||||
stmdb sp!,{r4,r5,r6,r7} @ copy counter and nonce
|
||||
ldmia r3,{r4,r5,r6,r7,r8,r9,r10,r11} @ load key
|
||||
ldmia r14,{r0,r1,r2,r3} @ load sigma
|
||||
|
||||
@@ -101,11 +101,7 @@ K256:
|
||||
.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 && !defined(__KERNEL__)
|
||||
ldr r12,.LOPENSSL_armcap
|
||||
ldr r12,[r3,r12] @ OPENSSL_armcap_P
|
||||
@@ -120,6 +116,8 @@ sha256_block_data_order:
|
||||
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}
|
||||
@ TODO(davidben): When the OPENSSL_armcap logic above is removed,
|
||||
@ replace this with a simple ADR.
|
||||
sub r14,r3,#256+32 @ K256
|
||||
sub sp,sp,#16*4 @ alloca(X[16])
|
||||
.Loop:
|
||||
|
||||
@@ -148,11 +148,7 @@ K512:
|
||||
.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 && !defined(__KERNEL__)
|
||||
ldr r12,.LOPENSSL_armcap
|
||||
ldr r12,[r3,r12] @ OPENSSL_armcap_P
|
||||
@@ -164,6 +160,8 @@ sha512_block_data_order:
|
||||
#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}
|
||||
@ TODO(davidben): When the OPENSSL_armcap logic above is removed,
|
||||
@ replace this with a simple ADR.
|
||||
sub r14,r3,#672 @ K512
|
||||
sub sp,sp,#9*8
|
||||
|
||||
|
||||
@@ -198,7 +198,7 @@ $code.=<<___;
|
||||
.long 1,0,0,0
|
||||
#if __ARM_MAX_ARCH__>=7
|
||||
.LOPENSSL_armcap:
|
||||
.word OPENSSL_armcap_P-.LChaCha20_ctr32
|
||||
.word OPENSSL_armcap_P-.Lsigma
|
||||
#else
|
||||
.word -1
|
||||
#endif
|
||||
@@ -210,11 +210,7 @@ ChaCha20_ctr32:
|
||||
.LChaCha20_ctr32:
|
||||
ldr r12,[sp,#0] @ pull pointer to counter and nonce
|
||||
stmdb sp!,{r0-r2,r4-r11,lr}
|
||||
#if __ARM_ARCH<7 && !defined(__thumb2__)
|
||||
sub r14,pc,#16 @ ChaCha20_ctr32
|
||||
#else
|
||||
adr r14,.LChaCha20_ctr32
|
||||
#endif
|
||||
adr r14,.Lsigma
|
||||
cmp r2,#0 @ len==0?
|
||||
#ifdef __thumb2__
|
||||
itt eq
|
||||
@@ -224,7 +220,7 @@ ChaCha20_ctr32:
|
||||
#if __ARM_MAX_ARCH__>=7
|
||||
cmp r2,#192 @ test len
|
||||
bls .Lshort
|
||||
ldr r4,[r14,#-32]
|
||||
ldr r4,[r14,#32]
|
||||
ldr r4,[r14,r4]
|
||||
# ifdef __APPLE__
|
||||
ldr r4,[r4]
|
||||
@@ -235,7 +231,6 @@ ChaCha20_ctr32:
|
||||
#endif
|
||||
ldmia r12,{r4-r7} @ load counter and nonce
|
||||
sub sp,sp,#4*(16) @ off-load area
|
||||
sub r14,r14,#64 @ .Lsigma
|
||||
stmdb sp!,{r4-r7} @ copy counter and nonce
|
||||
ldmia r3,{r4-r11} @ load key
|
||||
ldmia r14,{r0-r3} @ load sigma
|
||||
|
||||
@@ -227,11 +227,7 @@ K256:
|
||||
.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 && !defined(__KERNEL__)
|
||||
ldr r12,.LOPENSSL_armcap
|
||||
ldr r12,[r3,r12] @ OPENSSL_armcap_P
|
||||
@@ -246,6 +242,8 @@ sha256_block_data_order:
|
||||
add $len,$inp,$len,lsl#6 @ len to point at the end of inp
|
||||
stmdb sp!,{$ctx,$inp,$len,r4-r11,lr}
|
||||
ldmia $ctx,{$A,$B,$C,$D,$E,$F,$G,$H}
|
||||
@ TODO(davidben): When the OPENSSL_armcap logic above is removed,
|
||||
@ replace this with a simple ADR.
|
||||
sub $Ktbl,r3,#256+32 @ K256
|
||||
sub sp,sp,#16*4 @ alloca(X[16])
|
||||
.Loop:
|
||||
|
||||
@@ -288,11 +288,7 @@ WORD64(0x5fcb6fab,0x3ad6faec, 0x6c44198c,0x4a475817)
|
||||
.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 && !defined(__KERNEL__)
|
||||
ldr r12,.LOPENSSL_armcap
|
||||
ldr r12,[r3,r12] @ OPENSSL_armcap_P
|
||||
@@ -304,6 +300,8 @@ sha512_block_data_order:
|
||||
#endif
|
||||
add $len,$inp,$len,lsl#7 @ len to point at the end of inp
|
||||
stmdb sp!,{r4-r12,lr}
|
||||
@ TODO(davidben): When the OPENSSL_armcap logic above is removed,
|
||||
@ replace this with a simple ADR.
|
||||
sub $Ktbl,r3,#672 @ K512
|
||||
sub sp,sp,#9*8
|
||||
|
||||
|
||||
Reference in New Issue
Block a user