From 2a3e1b6df73d2cc267b9d38c697597e659d762f5 Mon Sep 17 00:00:00 2001 From: Brent Cook Date: Mon, 19 May 2025 14:23:10 +0900 Subject: rename cpu_caps apple to darwin --- crypto/CMakeLists.txt | 2 +- crypto/Makefile.am | 2 +- crypto/arch/aarch64/crypto_cpu_caps_apple.c | 60 ---------------------------- crypto/arch/aarch64/crypto_cpu_caps_darwin.c | 60 ++++++++++++++++++++++++++++ 4 files changed, 62 insertions(+), 62 deletions(-) delete mode 100644 crypto/arch/aarch64/crypto_cpu_caps_apple.c create mode 100644 crypto/arch/aarch64/crypto_cpu_caps_darwin.c diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index 1c6436c..cee92ef 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt @@ -147,7 +147,7 @@ endif() if(HOST_AARCH64) if(APPLE) - set(CRYPTO_SRC ${CRYPTO_SRC} arch/aarch64/crypto_cpu_caps_apple.c) + set(CRYPTO_SRC ${CRYPTO_SRC} arch/aarch64/crypto_cpu_caps_darwin.c) elseif(LINUX) set(CRYPTO_SRC ${CRYPTO_SRC} arch/aarch64/crypto_cpu_caps_linux.c) elseif(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD") diff --git a/crypto/Makefile.am b/crypto/Makefile.am index 0d130d8..25e6363 100644 --- a/crypto/Makefile.am +++ b/crypto/Makefile.am @@ -211,7 +211,7 @@ endif if HOST_AARCH64 if HOST_DARWIN -libcrypto_la_SOURCES += arch/aarch64/crypto_cpu_caps_apple.c +libcrypto_la_SOURCES += arch/aarch64/crypto_cpu_caps_darwin.c else if HOST_LINUX libcrypto_la_SOURCES += arch/aarch64/crypto_cpu_caps_linux.c diff --git a/crypto/arch/aarch64/crypto_cpu_caps_apple.c b/crypto/arch/aarch64/crypto_cpu_caps_apple.c deleted file mode 100644 index 1dd91b2..0000000 --- a/crypto/arch/aarch64/crypto_cpu_caps_apple.c +++ /dev/null @@ -1,60 +0,0 @@ -/* $OpenBSD: crypto_cpu_caps.c,v 1.2 2024/11/12 13:52:31 jsing Exp $ */ -/* - * Copyright (c) 2025 Brent Cook - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#include - -#include "crypto_arch.h" - -/* Machine dependent CPU capabilities. */ -uint64_t crypto_cpu_caps_aarch64; - -static uint64_t -check_cpu_cap(const char *cap_name, uint64_t cap_flag) -{ - int has_cap = 0; - size_t len = sizeof(has_cap); - - sysctlbyname(cap_name, &has_cap, &len, NULL, 0); - - return has_cap ? cap_flag : 0; -} - -void -crypto_cpu_caps_init(void) -{ - crypto_cpu_caps_aarch64 = 0; - - /* from https://developer.apple.com/documentation/kernel/1387446-sysctlbyname/determining_instruction_set_characteristics#3918855 */ - - crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_AES", - CRYPTO_CPU_CAPS_AARCH64_AES); - - crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_PMULL", - CRYPTO_CPU_CAPS_AARCH64_PMULL); - - crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA1", - CRYPTO_CPU_CAPS_AARCH64_SHA1); - - crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA256", - CRYPTO_CPU_CAPS_AARCH64_SHA2); - - crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA512", - CRYPTO_CPU_CAPS_AARCH64_SHA512); - - crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA3", - CRYPTO_CPU_CAPS_AARCH64_SHA3); -} diff --git a/crypto/arch/aarch64/crypto_cpu_caps_darwin.c b/crypto/arch/aarch64/crypto_cpu_caps_darwin.c new file mode 100644 index 0000000..1dd91b2 --- /dev/null +++ b/crypto/arch/aarch64/crypto_cpu_caps_darwin.c @@ -0,0 +1,60 @@ +/* $OpenBSD: crypto_cpu_caps.c,v 1.2 2024/11/12 13:52:31 jsing Exp $ */ +/* + * Copyright (c) 2025 Brent Cook + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include + +#include "crypto_arch.h" + +/* Machine dependent CPU capabilities. */ +uint64_t crypto_cpu_caps_aarch64; + +static uint64_t +check_cpu_cap(const char *cap_name, uint64_t cap_flag) +{ + int has_cap = 0; + size_t len = sizeof(has_cap); + + sysctlbyname(cap_name, &has_cap, &len, NULL, 0); + + return has_cap ? cap_flag : 0; +} + +void +crypto_cpu_caps_init(void) +{ + crypto_cpu_caps_aarch64 = 0; + + /* from https://developer.apple.com/documentation/kernel/1387446-sysctlbyname/determining_instruction_set_characteristics#3918855 */ + + crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_AES", + CRYPTO_CPU_CAPS_AARCH64_AES); + + crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_PMULL", + CRYPTO_CPU_CAPS_AARCH64_PMULL); + + crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA1", + CRYPTO_CPU_CAPS_AARCH64_SHA1); + + crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA256", + CRYPTO_CPU_CAPS_AARCH64_SHA2); + + crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA512", + CRYPTO_CPU_CAPS_AARCH64_SHA512); + + crypto_cpu_caps_aarch64 |= check_cpu_cap("hw.optional.arm.FEAT_SHA3", + CRYPTO_CPU_CAPS_AARCH64_SHA3); +} -- cgit v1.2.3-55-g6feb