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

Side by Side Diff: third_party/boringssl/linux-arm/crypto/aes/bsaes-armv7.S

Issue 2783923002: Roll src/third_party/boringssl/src d04ca9535..a0ba400c3 (Closed)
Patch Set: Created 3 years, 8 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
« no previous file with comments | « third_party/boringssl/err_data.c ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #if defined(__arm__) 1 #if defined(__arm__)
2 @ Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved.
3 @
4 @ Licensed under the OpenSSL license (the "License"). You may not use
5 @ this file except in compliance with the License. You can obtain a copy
6 @ in the file LICENSE in the source distribution or at
7 @ https://www.openssl.org/source/license.html
8
2 9
3 @ ==================================================================== 10 @ ====================================================================
4 @ Written by Andy Polyakov <appro@openssl.org> for the OpenSSL 11 @ Written by Andy Polyakov <appro@openssl.org> for the OpenSSL
5 @ project. The module is, however, dual licensed under OpenSSL and 12 @ project. The module is, however, dual licensed under OpenSSL and
6 @ CRYPTOGAMS licenses depending on where you obtain it. For further 13 @ CRYPTOGAMS licenses depending on where you obtain it. For further
7 @ details see http://www.openssl.org/~appro/cryptogams/. 14 @ details see http://www.openssl.org/~appro/cryptogams/.
8 @ 15 @
9 @ Specific modes and adaptation for Linux kernel by Ard Biesheuvel 16 @ Specific modes and adaptation for Linux kernel by Ard Biesheuvel
10 @ <ard.biesheuvel@linaro.org>. Permission to use under GPL terms is 17 @ <ard.biesheuvel@linaro.org>. Permission to use under GPL terms is
11 @ granted. 18 @ granted.
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 #if __ARM_MAX_ARCH__>=7 77 #if __ARM_MAX_ARCH__>=7
71 .arch armv7-a 78 .arch armv7-a
72 .fpu neon 79 .fpu neon
73 80
74 .text 81 .text
75 .syntax unified @ ARMv7-capable assembler is expected to handle this 82 .syntax unified @ ARMv7-capable assembler is expected to handle this
76 #if defined(__thumb2__) && !defined(__APPLE__) 83 #if defined(__thumb2__) && !defined(__APPLE__)
77 .thumb 84 .thumb
78 #else 85 #else
79 .code 32 86 .code 32
87 # undef __thumb2__
80 #endif 88 #endif
81 89
82 .type _bsaes_decrypt8,%function 90 .type _bsaes_decrypt8,%function
83 .align 4 91 .align 4
84 _bsaes_decrypt8: 92 _bsaes_decrypt8:
85 adr r6,_bsaes_decrypt8 93 adr r6,_bsaes_decrypt8
86 vldmia r4!, {q9} @ round 0 key 94 vldmia r4!, {q9} @ round 0 key
87 #ifdef __APPLE__ 95 #ifdef __APPLE__
88 adr r6,.LM0ISR 96 adr r6,.LM0ISR
89 #else 97 #else
(...skipping 1216 matching lines...) Expand 10 before | Expand all | Expand 10 after
1306 b .Lcbc_dec_done 1314 b .Lcbc_dec_done
1307 .align 4 1315 .align 4
1308 .Lcbc_dec_one: 1316 .Lcbc_dec_one:
1309 sub r0, r0, #0x10 1317 sub r0, r0, #0x10
1310 mov r10, r1 @ save original out pointer 1318 mov r10, r1 @ save original out pointer
1311 mov r1, r9 @ use the iv scratch space as out buffer 1319 mov r1, r9 @ use the iv scratch space as out buffer
1312 mov r2, r3 1320 mov r2, r3
1313 vmov q4,q15 @ just in case ensure that IV 1321 vmov q4,q15 @ just in case ensure that IV
1314 vmov q5,q0 @ and input are preserved 1322 vmov q5,q0 @ and input are preserved
1315 bl AES_decrypt 1323 bl AES_decrypt
1316 » vld1.8» {q0}, [r9,:64]» » @ load result 1324 » vld1.8» {q0}, [r9]» » @ load result
1317 veor q0, q0, q4 @ ^= IV 1325 veor q0, q0, q4 @ ^= IV
1318 vmov q15, q5 @ q5 holds input 1326 vmov q15, q5 @ q5 holds input
1319 vst1.8 {q0}, [r10] @ write output 1327 vst1.8 {q0}, [r10] @ write output
1320 1328
1321 .Lcbc_dec_done: 1329 .Lcbc_dec_done:
1322 #ifndef BSAES_ASM_EXTENDED_KEY 1330 #ifndef BSAES_ASM_EXTENDED_KEY
1323 vmov.i32 q0, #0 1331 vmov.i32 q0, #0
1324 vmov.i32 q1, #0 1332 vmov.i32 q1, #0
1325 .Lcbc_dec_bzero:@ wipe key schedule [if any] 1333 .Lcbc_dec_bzero:@ wipe key schedule [if any]
1326 vstmia sp!, {q0,q1} 1334 vstmia sp!, {q0,q1}
(...skipping 1223 matching lines...) Expand 10 before | Expand all | Expand 10 after
2550 mov sp, r3 2558 mov sp, r3
2551 #ifdef XTS_CHAIN_TWEAK 2559 #ifdef XTS_CHAIN_TWEAK
2552 vst1.8 {q8}, [r1] 2560 vst1.8 {q8}, [r1]
2553 #endif 2561 #endif
2554 VFP_ABI_POP 2562 VFP_ABI_POP
2555 ldmia sp!, {r4,r5,r6,r7,r8,r9,r10, pc} @ return 2563 ldmia sp!, {r4,r5,r6,r7,r8,r9,r10, pc} @ return
2556 2564
2557 .size bsaes_xts_decrypt,.-bsaes_xts_decrypt 2565 .size bsaes_xts_decrypt,.-bsaes_xts_decrypt
2558 #endif 2566 #endif
2559 #endif 2567 #endif
OLDNEW
« no previous file with comments | « third_party/boringssl/err_data.c ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698