mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-07-07 21:00:51 +02:00
Merge pull request #9714 from philljj/bsdkm_crypto_accel
bsdkm: x86 crypto acceleration support.
This commit is contained in:
@@ -2683,9 +2683,9 @@ static WC_INLINE void bench_stats_start(int* count, double* start)
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef WOLFSSL_USE_SAVE_VECTOR_REGISTERS
|
||||
#if defined(WOLFSSL_USE_SAVE_VECTOR_REGISTERS)
|
||||
#define bench_stats_start(count, start) do { \
|
||||
SAVE_VECTOR_REGISTERS(pr_err( \
|
||||
SAVE_VECTOR_REGISTERS(WOLFSSL_DEBUG_PRINTF( \
|
||||
"ERROR: SAVE_VECTOR_REGISTERS failed for benchmark run."); \
|
||||
return; ); \
|
||||
bench_stats_start(count, start); \
|
||||
@@ -3161,7 +3161,7 @@ static void bench_stats_sym_finish(const char* desc, int useDeviceID,
|
||||
(void)useDeviceID;
|
||||
(void)ret;
|
||||
|
||||
#ifdef WOLFSSL_USE_SAVE_VECTOR_REGISTERS
|
||||
#if defined(WOLFSSL_USE_SAVE_VECTOR_REGISTERS)
|
||||
RESTORE_VECTOR_REGISTERS();
|
||||
#elif defined(WOLFSSL_LINUXKM)
|
||||
kernel_fpu_end();
|
||||
@@ -3559,7 +3559,7 @@ static void bench_stats_asym_finish_ex(const char* algo, int strength,
|
||||
(void)useDeviceID;
|
||||
(void)ret;
|
||||
|
||||
#ifdef WOLFSSL_USE_SAVE_VECTOR_REGISTERS
|
||||
#if defined(WOLFSSL_USE_SAVE_VECTOR_REGISTERS)
|
||||
RESTORE_VECTOR_REGISTERS();
|
||||
#elif defined(WOLFSSL_LINUXKM)
|
||||
kernel_fpu_end();
|
||||
@@ -16024,6 +16024,20 @@ void bench_sphincsKeySign(byte level, byte optim)
|
||||
return (double)ns / 1000000000.0;
|
||||
}
|
||||
|
||||
#elif defined(WOLFSSL_BSDKM)
|
||||
|
||||
#include <sys/timex.h>
|
||||
double current_time(int reset)
|
||||
{
|
||||
(void)reset;
|
||||
struct timespec ts;
|
||||
int64_t result = 0;
|
||||
|
||||
getnanouptime(&ts);
|
||||
result = (int64_t) ts.tv_sec + (int64_t) ts.tv_nsec / NANOSECOND;
|
||||
return (double)result;
|
||||
}
|
||||
|
||||
#elif defined(WOLFSSL_GAISLER_BCC)
|
||||
|
||||
#include <bcc/bcc.h>
|
||||
|
||||
@@ -113,7 +113,11 @@
|
||||
|
||||
static WC_INLINE void cpuid_set_flags(void)
|
||||
{
|
||||
#ifdef WOLFSSL_BSDKM
|
||||
if (WOLFSSL_ATOMIC_LOAD_UINT(cpuid_flags) == WC_CPUID_INITIALIZER) {
|
||||
#else
|
||||
if (WOLFSSL_ATOMIC_LOAD(cpuid_flags) == WC_CPUID_INITIALIZER) {
|
||||
#endif
|
||||
cpuid_flags_t new_cpuid_flags = 0,
|
||||
old_cpuid_flags = WC_CPUID_INITIALIZER;
|
||||
if (cpuid_flag(1, 0, ECX, 28)) { new_cpuid_flags |= CPUID_AVX1 ; }
|
||||
|
||||
Reference in New Issue
Block a user