1
2#ifndef sodium_runtime_H
3#define sodium_runtime_H
4
5#include "export.h"
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11SODIUM_EXPORT_WEAK
12int sodium_runtime_has_neon(void);
13
14SODIUM_EXPORT_WEAK
15int sodium_runtime_has_sse2(void);
16
17SODIUM_EXPORT_WEAK
18int sodium_runtime_has_sse3(void);
19
20SODIUM_EXPORT_WEAK
21int sodium_runtime_has_ssse3(void);
22
23SODIUM_EXPORT_WEAK
24int sodium_runtime_has_sse41(void);
25
26SODIUM_EXPORT_WEAK
27int sodium_runtime_has_avx(void);
28
29SODIUM_EXPORT_WEAK
30int sodium_runtime_has_avx2(void);
31
32SODIUM_EXPORT_WEAK
33int sodium_runtime_has_avx512f(void);
34
35SODIUM_EXPORT_WEAK
36int sodium_runtime_has_pclmul(void);
37
38SODIUM_EXPORT_WEAK
39int sodium_runtime_has_aesni(void);
40
41SODIUM_EXPORT_WEAK
42int sodium_runtime_has_rdrand(void);
43
44/* ------------------------------------------------------------------------- */
45
46int _sodium_runtime_get_cpu_features(void);
47
48#ifdef __cplusplus
49}
50#endif
51
52#endif
53