Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(600)

Side by Side Diff: third_party/boringssl/linux-arm/crypto/sha/sha256-armv4.S

Issue 1924693003: Rolls BoringSSL forward (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 #if defined(__arm__) 1 #if defined(__arm__)
2 2
3 @ ==================================================================== 3 @ ====================================================================
4 @ Written by Andy Polyakov <appro@openssl.org> for the OpenSSL 4 @ Written by Andy Polyakov <appro@openssl.org> for the OpenSSL
5 @ project. The module is, however, dual licensed under OpenSSL and 5 @ project. The module is, however, dual licensed under OpenSSL and
6 @ CRYPTOGAMS licenses depending on where you obtain it. For further 6 @ CRYPTOGAMS licenses depending on where you obtain it. For further
7 @ details see http://www.openssl.org/~appro/cryptogams/. 7 @ details see http://www.openssl.org/~appro/cryptogams/.
8 @ 8 @
9 @ Permission to use under GPL terms is granted. 9 @ Permission to use under GPL terms is granted.
10 @ ==================================================================== 10 @ ====================================================================
(...skipping 20 matching lines...) Expand all
31 @ byte in 12.5 cycles or 23% faster than integer-only code. Snapdragon 31 @ byte in 12.5 cycles or 23% faster than integer-only code. Snapdragon
32 @ S4 does it in 12.5 cycles too, but it's 50% faster than integer-only 32 @ S4 does it in 12.5 cycles too, but it's 50% faster than integer-only
33 @ code (meaning that latter performs sub-optimally, nothing was done 33 @ code (meaning that latter performs sub-optimally, nothing was done
34 @ about it). 34 @ about it).
35 35
36 @ May 2014. 36 @ May 2014.
37 @ 37 @
38 @ Add ARMv8 code path performing at 2.0 cpb on Apple A7. 38 @ Add ARMv8 code path performing at 2.0 cpb on Apple A7.
39 39
40 #ifndef __KERNEL__ 40 #ifndef __KERNEL__
41 # include "arm_arch.h" 41 # include <openssl/arm_arch.h>
42 #else 42 #else
43 # define __ARM_ARCH__ __LINUX_ARM_ARCH__ 43 # define __ARM_ARCH__ __LINUX_ARM_ARCH__
44 # define __ARM_MAX_ARCH__ 7 44 # define __ARM_MAX_ARCH__ 7
45 #endif 45 #endif
46 46
47 .text 47 .text
48 #if __ARM_ARCH__<7 48 #if __ARM_ARCH__<7
49 .code 32 49 .code 32
50 #else 50 #else
51 .syntax unified 51 .syntax unified
(...skipping 26 matching lines...) Expand all
78 .word 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 78 .word 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
79 .size K256,.-K256 79 .size K256,.-K256
80 .word 0 @ terminator 80 .word 0 @ terminator
81 #if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) 81 #if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__)
82 .LOPENSSL_armcap: 82 .LOPENSSL_armcap:
83 .word OPENSSL_armcap_P-.Lsha256_block_data_order 83 .word OPENSSL_armcap_P-.Lsha256_block_data_order
84 #endif 84 #endif
85 .align 5 85 .align 5
86 86
87 .globl sha256_block_data_order 87 .globl sha256_block_data_order
88 .hidden sha256_block_data_order
88 .type sha256_block_data_order,%function 89 .type sha256_block_data_order,%function
89 sha256_block_data_order: 90 sha256_block_data_order:
90 .Lsha256_block_data_order: 91 .Lsha256_block_data_order:
91 #if __ARM_ARCH__<7 92 #if __ARM_ARCH__<7
92 sub r3,pc,#8 @ sha256_block_data_order 93 sub r3,pc,#8 @ sha256_block_data_order
93 #else 94 #else
94 adr r3,sha256_block_data_order 95 adr r3,sha256_block_data_order
95 #endif 96 #endif
96 #if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) 97 #if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__)
97 ldr r12,.LOPENSSL_armcap 98 ldr r12,.LOPENSSL_armcap
(...skipping 1770 matching lines...) Expand 10 before | Expand all | Expand 10 after
1868 tst lr,#1 1869 tst lr,#1
1869 moveq pc,lr @ be binary compatible with V4, yet 1870 moveq pc,lr @ be binary compatible with V4, yet
1870 .word 0xe12fff1e @ interoperable with Thumb ISA:-) 1871 .word 0xe12fff1e @ interoperable with Thumb ISA:-)
1871 #endif 1872 #endif
1872 .size sha256_block_data_order,.-sha256_block_data_order 1873 .size sha256_block_data_order,.-sha256_block_data_order
1873 #if __ARM_MAX_ARCH__>=7 1874 #if __ARM_MAX_ARCH__>=7
1874 .arch armv7-a 1875 .arch armv7-a
1875 .fpu neon 1876 .fpu neon
1876 1877
1877 .globl sha256_block_data_order_neon 1878 .globl sha256_block_data_order_neon
1879 .hidden sha256_block_data_order_neon
1878 .type sha256_block_data_order_neon,%function 1880 .type sha256_block_data_order_neon,%function
1879 .align 4 1881 .align 4
1880 sha256_block_data_order_neon: 1882 sha256_block_data_order_neon:
1881 .LNEON: 1883 .LNEON:
1882 stmdb sp!,{r4,r5,r6,r7,r8,r9,r10,r11,r12,lr} 1884 stmdb sp!,{r4,r5,r6,r7,r8,r9,r10,r11,r12,lr}
1883 1885
1884 sub r11,sp,#16*4+16 1886 sub r11,sp,#16*4+16
1885 adrl r14,K256 1887 adrl r14,K256
1886 bic r11,r11,#15 @ align for 128-bit stores 1888 bic r11,r11,#15 @ align for 128-bit stores
1887 mov r12,sp 1889 mov r12,sp
(...skipping 920 matching lines...) Expand 10 before | Expand all | Expand 10 after
2808 bx lr @ bx lr 2810 bx lr @ bx lr
2809 .size sha256_block_data_order_armv8,.-sha256_block_data_order_armv8 2811 .size sha256_block_data_order_armv8,.-sha256_block_data_order_armv8
2810 #endif 2812 #endif
2811 .byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114 ,109,32,102,111,114,32,65,82,77,118,52,47,78,69,79,78,47,65,82,77,118,56,44,32,6 7,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,1 10,115,115,108,46,111,114,103,62,0 2813 .byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114 ,109,32,102,111,114,32,65,82,77,118,52,47,78,69,79,78,47,65,82,77,118,56,44,32,6 7,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,1 10,115,115,108,46,111,114,103,62,0
2812 .align 2 2814 .align 2
2813 .align 2 2815 .align 2
2814 #if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__) 2816 #if __ARM_MAX_ARCH__>=7 && !defined(__KERNEL__)
2815 .comm OPENSSL_armcap_P,4,4 2817 .comm OPENSSL_armcap_P,4,4
2816 .hidden OPENSSL_armcap_P 2818 .hidden OPENSSL_armcap_P
2817 #endif 2819 #endif
2818 #endif 2820 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698