Line | |
---|
1 | #ifndef _HLDEFINES_H_ |
---|
2 | #define _HLDEFINES_H_ |
---|
3 | |
---|
4 | /* |
---|
5 | * @file hldefines.h |
---|
6 | * @brief Defines macros used throughout Heap Layers. |
---|
7 | * |
---|
8 | */ |
---|
9 | |
---|
10 | // Define HL_EXECUTABLE_HEAP as 1 if you want that (i.e., you're doing |
---|
11 | // dynamic code generation). |
---|
12 | |
---|
13 | #define HL_EXECUTABLE_HEAP 0 |
---|
14 | |
---|
15 | #if defined(_MSC_VER) |
---|
16 | |
---|
17 | // Microsoft Visual Studio |
---|
18 | #pragma inline_depth(255) |
---|
19 | #define INLINE __forceinline |
---|
20 | #define inline __forceinline |
---|
21 | #define NO_INLINE __declspec(noinline) |
---|
22 | #pragma warning(disable: 4530) |
---|
23 | #define MALLOC_FUNCTION |
---|
24 | #define RESTRICT |
---|
25 | |
---|
26 | #elif defined(__GNUC__) |
---|
27 | |
---|
28 | // GNU C |
---|
29 | |
---|
30 | #define NO_INLINE __attribute__ ((noinline)) |
---|
31 | #define INLINE inline |
---|
32 | #define MALLOC_FUNCTION __attribute__((malloc)) |
---|
33 | #define RESTRICT __restrict__ |
---|
34 | |
---|
35 | #else |
---|
36 | |
---|
37 | // All others |
---|
38 | |
---|
39 | #define NO_INLINE |
---|
40 | #define INLINE inline |
---|
41 | #define MALLOC_FUNCTION |
---|
42 | #define RESTRICT |
---|
43 | |
---|
44 | #endif |
---|
45 | |
---|
46 | #endif |
---|
Note: See
TracBrowser
for help on using the repository browser.