Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/boringssl.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Langley <agl@google.com>2015-01-10 02:44:37 +0300
committerAdam Langley <agl@google.com>2015-01-15 02:38:11 +0300
commit3e6526575ac2349a44a04a0bbc7acb917fab5a0b (patch)
tree51f4fbc4677ec256a8ff1f747df201f13ed50157 /crypto/CMakeLists.txt
parentbc44c089fbd87de0924130453058131ce30cd483 (diff)
aarch64 support.
This is an initial cut at aarch64 support. I have only qemu to test it however—hopefully hardware will be coming soon. This also affects 32-bit ARM in that aarch64 chips can run 32-bit code and we would like to be able to take advantage of the crypto operations even in 32-bit mode. AES and GHASH should Just Work in this case: the -armx.pl files can be built for either 32- or 64-bit mode based on the flavour argument given to the Perl script. SHA-1 and SHA-256 don't work like this however because they've never support for multiple implementations, thus BoringSSL built for 32-bit won't use the SHA instructions on an aarch64 chip. No dedicated ChaCha20 or Poly1305 support yet. Change-Id: Ib275bc4894a365c8ec7c42f4e91af6dba3bd686c Reviewed-on: https://boringssl-review.googlesource.com/2801 Reviewed-by: Adam Langley <agl@google.com>
Diffstat (limited to 'crypto/CMakeLists.txt')
-rw-r--r--crypto/CMakeLists.txt17
1 files changed, 15 insertions, 2 deletions
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt
index 56b66160..ca8bb8be 100644
--- a/crypto/CMakeLists.txt
+++ b/crypto/CMakeLists.txt
@@ -5,7 +5,13 @@ if(APPLE)
set(ASM_EXT S)
enable_language(ASM)
elseif(UNIX)
- set(PERLASM_STYLE elf)
+ if (${ARCH} STREQUAL "aarch64")
+ # The "armx" Perl scripts look for "64" in the style argument
+ # in order to decide whether to generate 32- or 64-bit asm.
+ set(PERLASM_STYLE linux64)
+ else()
+ set(PERLASM_STYLE elf)
+ endif()
set(ASM_EXT S)
enable_language(ASM)
else()
@@ -59,7 +65,14 @@ if (${ARCH} STREQUAL "arm")
set(
CRYPTO_ARCH_SOURCES
- cpu-x86-asm.${ASM_EXT}
+ cpu-arm.c
+ )
+endif()
+
+if (${ARCH} STREQUAL "aarch64")
+ set(
+ CRYPTO_ARCH_SOURCES
+
cpu-arm.c
)
endif()