57QSC_CPLUSPLUS_ENABLED_START
92#define QSC_CPUIDEX_SERIAL_SIZE 12ULL
94#if defined(QSC_SYSTEM_OS_MAC) && defined(QSC_SYSTEM_COMPILER_GCC)
99 #define QSC_CPUIDEX_VENDOR_SIZE 32
105 #define QSC_CPUIDEX_VENDOR_SIZE 12ULL
176QSC_CPLUSPLUS_ENABLED_END
QSC_EXPORT_API void qsc_cpuidex_print_stats(void)
Print the detected CPU features to the console.
QSC_EXPORT_API bool qsc_cpuidex_features_set(qsc_cpuidex_cpu_features *const features)
Populate the CPU features structure with detected CPU capabilities.
#define QSC_CPUIDEX_SERIAL_SIZE
The CPU serial number length (in bytes).
Definition cpuidex.h:92
#define QSC_CPUIDEX_VENDOR_SIZE
The CPU vendor name length.
Definition cpuidex.h:105
qsc_cpuidex_cpu_type
The detectable CPU architectures.
Definition cpuidex.h:113
@ qsc_cpuid_unknown
Definition cpuidex.h:114
@ qsc_cpuid_amd
Definition cpuidex.h:115
@ qsc_cpuid_intel
Definition cpuidex.h:116
@ qsc_cpuid_via
Definition cpuidex.h:117
@ qsc_cpuid_hygion
Definition cpuidex.h:118
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 qsccommon.h:645
Contains the CPU feature availability.
Definition cpuidex.h:130
bool avx512f
Definition cpuidex.h:141
uint32_t cpus
Definition cpuidex.h:147
uint32_t freqref
Definition cpuidex.h:150
uint32_t freqbase
Definition cpuidex.h:148
bool adx
Definition cpuidex.h:131
char serial[QSC_CPUIDEX_SERIAL_SIZE]
Definition cpuidex.h:155
uint32_t l2associative
Definition cpuidex.h:153
uint32_t cores
Definition cpuidex.h:146
bool hyperthread
Definition cpuidex.h:142
uint32_t l1cache
Definition cpuidex.h:151
char vendor[QSC_CPUIDEX_VENDOR_SIZE]
Definition cpuidex.h:156
bool sha256
Definition cpuidex.h:136
bool sha3
Definition cpuidex.h:138
uint32_t l2cache
Definition cpuidex.h:154
bool avx
Definition cpuidex.h:139
uint32_t freqmax
Definition cpuidex.h:149
bool aesni
Definition cpuidex.h:132
bool avx2
Definition cpuidex.h:140
bool rdrand
Definition cpuidex.h:143
bool armv7
Definition cpuidex.h:134
bool sha512
Definition cpuidex.h:137
uint32_t l1cacheline
Definition cpuidex.h:152
uint32_t cacheline
Definition cpuidex.h:145
bool rdtcsp
Definition cpuidex.h:144
qsc_cpuidex_cpu_type cputype
Definition cpuidex.h:157
bool pcmul
Definition cpuidex.h:133
bool neon
Definition cpuidex.h:135