46QSC_CPLUSPLUS_ENABLED_START
81#define QSC_CPUIDEX_SERIAL_SIZE 12ULL
83#if defined(QSC_SYSTEM_OS_APPLE) && defined(QSC_SYSTEM_COMPILER_GCC)
88 #define QSC_CPUIDEX_VENDOR_SIZE 32
94 #define QSC_CPUIDEX_VENDOR_SIZE 12ULL
166QSC_CPLUSPLUS_ENABLED_END
Contains common definitions for the Quantum Secure Cryptographic (QSC) library.
#define QSC_EXPORT_API
API export macro for Microsoft compilers when importing from a DLL.
Definition common.h:520
QSC_EXPORT_API void qsc_cpuidex_print_stats(void)
Print the detected CPU features to the console.
Definition cpuidex.c:930
QSC_EXPORT_API bool qsc_cpuidex_features_set(qsc_cpuidex_cpu_features *const features)
Populate the CPU features structure with detected CPU capabilities.
Definition cpuidex.c:873
#define QSC_CPUIDEX_SERIAL_SIZE
The CPU serial number length (in bytes).
Definition cpuidex.h:81
#define QSC_CPUIDEX_VENDOR_SIZE
The CPU vendor name length.
Definition cpuidex.h:94
qsc_cpuidex_cpu_type
The detectable CPU architectures.
Definition cpuidex.h:102
@ qsc_cpuid_unknown
Definition cpuidex.h:103
@ qsc_cpuid_amd
Definition cpuidex.h:104
@ qsc_cpuid_intel
Definition cpuidex.h:105
@ qsc_cpuid_via
Definition cpuidex.h:106
@ qsc_cpuid_hygion
Definition cpuidex.h:107
Contains the CPU feature availability.
Definition cpuidex.h:119
bool avx512f
Definition cpuidex.h:130
uint32_t cpus
Definition cpuidex.h:136
uint32_t freqref
Definition cpuidex.h:139
uint32_t freqbase
Definition cpuidex.h:137
bool adx
Definition cpuidex.h:120
char serial[QSC_CPUIDEX_SERIAL_SIZE]
Definition cpuidex.h:144
uint32_t l2associative
Definition cpuidex.h:142
uint32_t cores
Definition cpuidex.h:135
bool hyperthread
Definition cpuidex.h:131
uint32_t l1cache
Definition cpuidex.h:140
char vendor[QSC_CPUIDEX_VENDOR_SIZE]
Definition cpuidex.h:145
bool sha256
Definition cpuidex.h:125
bool sha3
Definition cpuidex.h:127
uint32_t l2cache
Definition cpuidex.h:143
bool avx
Definition cpuidex.h:128
uint32_t freqmax
Definition cpuidex.h:138
bool aesni
Definition cpuidex.h:121
bool avx2
Definition cpuidex.h:129
bool rdrand
Definition cpuidex.h:132
bool armv7
Definition cpuidex.h:123
bool sha512
Definition cpuidex.h:126
uint32_t l1cacheline
Definition cpuidex.h:141
uint32_t cacheline
Definition cpuidex.h:134
bool rdtcsp
Definition cpuidex.h:133
qsc_cpuidex_cpu_type cputype
Definition cpuidex.h:146
bool pcmul
Definition cpuidex.h:122
bool neon
Definition cpuidex.h:124