diff options
-rw-r--r-- | linux-aarch64/crypto/aes/aesv8-armx.S | 5 | ||||
-rw-r--r-- | linux-aarch64/crypto/modes/ghashv8-armx.S | 5 | ||||
-rw-r--r-- | src/crypto/aes/asm/aesv8-armx.pl | 10 | ||||
-rw-r--r-- | src/crypto/modes/asm/ghashv8-armx.pl | 9 |
4 files changed, 27 insertions, 2 deletions
diff --git a/linux-aarch64/crypto/aes/aesv8-armx.S b/linux-aarch64/crypto/aes/aesv8-armx.S index 0a4b1ac..e3d4666 100644 --- a/linux-aarch64/crypto/aes/aesv8-armx.S +++ b/linux-aarch64/crypto/aes/aesv8-armx.S @@ -2,7 +2,12 @@ #if __ARM_MAX_ARCH__>=7 .text +#ifdef __clang__ +.arch armv8-a +.arch_extension crypto +#else .arch armv8-a+crypto +#endif .align 5 rcon: .long 0x01,0x01,0x01,0x01 diff --git a/linux-aarch64/crypto/modes/ghashv8-armx.S b/linux-aarch64/crypto/modes/ghashv8-armx.S index 1bfb263..2da617f 100644 --- a/linux-aarch64/crypto/modes/ghashv8-armx.S +++ b/linux-aarch64/crypto/modes/ghashv8-armx.S @@ -1,7 +1,12 @@ #include "arm_arch.h" .text +#ifdef __clang__ +.arch armv8-a +.arch_extension crypto +#else .arch armv8-a+crypto +#endif .global gcm_init_v8 .type gcm_init_v8,%function .align 4 diff --git a/src/crypto/aes/asm/aesv8-armx.pl b/src/crypto/aes/asm/aesv8-armx.pl index 1e93f86..2f0aaae 100644 --- a/src/crypto/aes/asm/aesv8-armx.pl +++ b/src/crypto/aes/asm/aesv8-armx.pl @@ -38,7 +38,15 @@ $code=<<___; #if __ARM_MAX_ARCH__>=7 .text ___ -$code.=".arch armv8-a+crypto\n" if ($flavour =~ /64/); + +$code.=<<___ if ($flavour =~ /64/); +#ifdef __clang__ +.arch armv8-a +.arch_extension crypto +#else +.arch armv8-a+crypto +#endif +___ $code.=".arch armv7-a\n.fpu neon\n.code 32\n" if ($flavour !~ /64/); #^^^^^^ this is done to simplify adoption by not depending # on latest binutils. diff --git a/src/crypto/modes/asm/ghashv8-armx.pl b/src/crypto/modes/asm/ghashv8-armx.pl index 54a1ac4..40dca96 100644 --- a/src/crypto/modes/asm/ghashv8-armx.pl +++ b/src/crypto/modes/asm/ghashv8-armx.pl @@ -44,7 +44,14 @@ $code=<<___; .text ___ -$code.=".arch armv8-a+crypto\n" if ($flavour =~ /64/); +$code.=<<___ if ($flavour =~ /64/); +#ifdef __clang__ +.arch armv8-a +.arch_extension crypto +#else +.arch armv8-a+crypto +#endif +___ $code.=".fpu neon\n.code 32\n" if ($flavour !~ /64/); $code.=<<___; |