ezEngine  Milestone 7
GCC.h
1 
2 #pragma once
3 
4 // re-investigate: attribute(always inline) does not work for some reason
5 #define EZ_FORCE_INLINE inline
6 
7 #define EZ_RESTRICT __restrict
8 
9 #define EZ_ALIGN(decl, alignment) __attribute__((aligned(alignment))) decl
10 #define EZ_ALIGNMENT_OF(type) __alignof(type)
11 
12 #define EZ_DEBUG_BREAK { __builtin_trap(); }
13 
14 #define EZ_SOURCE_FUNCTION __FUNCTION__
15 #define EZ_SOURCE_LINE __LINE__
16 #define EZ_SOURCE_FILE __FILE__
17 
18 
19 #define EZ_ANALYSIS_ASSUME(code_to_be_true)
20 #define EZ_ANALYSIS_IGNORE_WARNING_ONCE(x)
21 #define EZ_ANALYSIS_IGNORE_WARNING_START(x)
22 #define EZ_ANALYSIS_IGNORE_WARNING_END
23 #define EZ_ANALYSIS_IGNORE_ALL_START
24 #define EZ_ANALYSIS_IGNORE_ALL_END
25 
26 // declare compiler specific types
27 typedef unsigned long long int ezUInt64;
28 typedef long long int ezInt64;
29