OLD | NEW |
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 @ Specific modes and adaptation for Linux kernel by Ard Biesheuvel | 9 @ Specific modes and adaptation for Linux kernel by Ard Biesheuvel |
10 @ <ard.biesheuvel@linaro.org>. Permission to use under GPL terms is | 10 @ <ard.biesheuvel@linaro.org>. Permission to use under GPL terms is |
(...skipping 29 matching lines...) Expand all Loading... |
40 @ bsaes-x86_64.pl for further details)... | 40 @ bsaes-x86_64.pl for further details)... |
41 @ | 41 @ |
42 @ <appro@openssl.org> | 42 @ <appro@openssl.org> |
43 | 43 |
44 @ April-August 2013 | 44 @ April-August 2013 |
45 @ | 45 @ |
46 @ Add CBC, CTR and XTS subroutines, adapt for kernel use. | 46 @ Add CBC, CTR and XTS subroutines, adapt for kernel use. |
47 @ | 47 @ |
48 @ <ard.biesheuvel@linaro.org> | 48 @ <ard.biesheuvel@linaro.org> |
49 | 49 |
50 #if defined(__arm__) | |
51 #ifndef __KERNEL__ | 50 #ifndef __KERNEL__ |
52 # include "arm_arch.h" | 51 # include <openssl/arm_arch.h> |
53 | 52 |
54 # define VFP_ABI_PUSH vstmdb sp!,{d8-d15} | 53 # define VFP_ABI_PUSH vstmdb sp!,{d8-d15} |
55 # define VFP_ABI_POP vldmia sp!,{d8-d15} | 54 # define VFP_ABI_POP vldmia sp!,{d8-d15} |
56 # define VFP_ABI_FRAME 0x40 | 55 # define VFP_ABI_FRAME 0x40 |
57 #else | 56 #else |
58 # define VFP_ABI_PUSH | 57 # define VFP_ABI_PUSH |
59 # define VFP_ABI_POP | 58 # define VFP_ABI_POP |
60 # define VFP_ABI_FRAME 0 | 59 # define VFP_ABI_FRAME 0 |
61 # define BSAES_ASM_EXTENDED_KEY | 60 # define BSAES_ASM_EXTENDED_KEY |
62 # define XTS_CHAIN_TWEAK | 61 # define XTS_CHAIN_TWEAK |
(...skipping 2506 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2569 mov sp, r3 | 2568 mov sp, r3 |
2570 #ifdef XTS_CHAIN_TWEAK | 2569 #ifdef XTS_CHAIN_TWEAK |
2571 vst1.8 {q8}, [r1] | 2570 vst1.8 {q8}, [r1] |
2572 #endif | 2571 #endif |
2573 VFP_ABI_POP | 2572 VFP_ABI_POP |
2574 ldmia sp!, {r4,r5,r6,r7,r8,r9,r10, pc} @ return | 2573 ldmia sp!, {r4,r5,r6,r7,r8,r9,r10, pc} @ return |
2575 | 2574 |
2576 .size bsaes_xts_decrypt,.-bsaes_xts_decrypt | 2575 .size bsaes_xts_decrypt,.-bsaes_xts_decrypt |
2577 #endif | 2576 #endif |
2578 #endif | 2577 #endif |
2579 #endif | |
OLD | NEW |