diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-11-09 18:23:07 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-11-14 23:59:05 -0800 |
commit | 5c67177dcc6a23ceccaf8e69daf92a8a12212732 (patch) | |
tree | 714164fd114323cb39adcbf22798a0d81dfee364 /src/crypto/zinc/poly1305 | |
parent | cc36bde00d67f15d8657c2fa6f450dccf4fb76b7 (diff) |
chacha20,poly1305: use CONFIG_KERNEL_MODE_NEON in .pl on arm
While Andy is right to desire a separation between compiler defines and
project defines, there are simply too many odd kernel configurations and
we require testing for CONFIG_KERNEL_MODE_NEON.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'src/crypto/zinc/poly1305')
-rw-r--r-- | src/crypto/zinc/poly1305/poly1305-arm.pl | 2 | ||||
-rw-r--r-- | src/crypto/zinc/poly1305/poly1305-arm64.pl | 12 |
2 files changed, 8 insertions, 6 deletions
diff --git a/src/crypto/zinc/poly1305/poly1305-arm.pl b/src/crypto/zinc/poly1305/poly1305-arm.pl index 88a4260..30a2005 100644 --- a/src/crypto/zinc/poly1305/poly1305-arm.pl +++ b/src/crypto/zinc/poly1305/poly1305-arm.pl @@ -460,7 +460,7 @@ my ($T0,$T1,$MASK) = map("q$_",(15,4,0)); my ($in2,$zeros,$tbl0,$tbl1) = map("r$_",(4..7)); $code.=<<___; -#if __ARM_MAX_ARCH__>=7 +#if (defined(__KERNEL__) && defined(CONFIG_KERNEL_MODE_NEON)) || (!defined(__KERNEL__) && __ARM_MAX_ARCH__>=7) .fpu neon .type poly1305_init_neon,%function diff --git a/src/crypto/zinc/poly1305/poly1305-arm64.pl b/src/crypto/zinc/poly1305/poly1305-arm64.pl index cf0ce9d..d513b45 100644 --- a/src/crypto/zinc/poly1305/poly1305-arm64.pl +++ b/src/crypto/zinc/poly1305/poly1305-arm64.pl @@ -68,11 +68,6 @@ $code.=<<___; // forward "declarations" are required for Apple .globl poly1305_blocks .globl poly1305_emit -#ifdef __KERNEL__ -.globl poly1305_blocks_neon -.globl poly1305_emit_neon -#endif - .globl poly1305_init .type poly1305_init,%function .align 5 @@ -301,6 +296,12 @@ __poly1305_splat: ret .size __poly1305_splat,.-__poly1305_splat +#if !defined(__KERNEL__) || defined(CONFIG_KERNEL_MODE_NEON) +#ifdef __KERNEL__ +.globl poly1305_blocks_neon +.globl poly1305_emit_neon +#endif + .type poly1305_blocks_neon,%function .align 5 poly1305_blocks_neon: @@ -933,6 +934,7 @@ poly1305_emit_neon: ret .size poly1305_emit_neon,.-poly1305_emit_neon +#endif .align 5 .Lzeros: |