Go to the documentation of this file.
9 #ifndef HWY_DLLEXPORT_H
10 #define HWY_DLLEXPORT_H
13 #if !defined(HWY_SHARED_DEFINE) && !defined(HWY_STATIC_DEFINE)
14 #define HWY_STATIC_DEFINE
17 #ifdef HWY_STATIC_DEFINE
20 #define HWY_CONTRIB_DLLEXPORT
21 #define HWY_CONTRIB_NO_EXPORT
22 #define HWY_TEST_DLLEXPORT
23 #define HWY_TEST_NO_EXPORT
27 #if defined(hwy_EXPORTS)
30 #define HWY_DLLEXPORT __declspec(dllexport)
32 #define HWY_DLLEXPORT __attribute__((visibility("default")))
37 #define HWY_DLLEXPORT __declspec(dllimport)
39 #define HWY_DLLEXPORT __attribute__((visibility("default")))
48 #define HWY_NO_EXPORT __attribute__((visibility("hidden")))
52 #ifndef HWY_CONTRIB_DLLEXPORT
53 #if defined(hwy_contrib_EXPORTS)
56 #define HWY_CONTRIB_DLLEXPORT __declspec(dllexport)
58 #define HWY_CONTRIB_DLLEXPORT __attribute__((visibility("default")))
63 #define HWY_CONTRIB_DLLEXPORT __declspec(dllimport)
65 #define HWY_CONTRIB_DLLEXPORT __attribute__((visibility("default")))
70 #ifndef HWY_CONTRIB_NO_EXPORT
72 #define HWY_CONTRIB_NO_EXPORT
74 #define HWY_CONTRIB_NO_EXPORT __attribute__((visibility("hidden")))
78 #ifndef HWY_TEST_DLLEXPORT
79 #if defined(hwy_test_EXPORTS)
82 #define HWY_TEST_DLLEXPORT __declspec(dllexport)
84 #define HWY_TEST_DLLEXPORT __attribute__((visibility("default")))
89 #define HWY_TEST_DLLEXPORT __declspec(dllimport)
91 #define HWY_TEST_DLLEXPORT __attribute__((visibility("default")))
96 #ifndef HWY_TEST_NO_EXPORT
98 #define HWY_TEST_NO_EXPORT
100 #define HWY_TEST_NO_EXPORT __attribute__((visibility("hidden")))