#define UNUSED_VAR(type,name) __attribute__((__unused__)) type name
#define USED_VAR(type,name) __attribute__((__used__)) type name
#define INLINE static inline __attribute__((__always_inline__))
+ #define NOINLINE __attribute__((noinline))
#define LIKELY(x) __builtin_expect(!!(x), 1)
#define UNLIKELY(x) __builtin_expect(!!(x), 0)
#define PURE_FUNC __attribute__((pure))
#define RESTRICT __restrict__
#define MUST_CHECK __attribute__((warn_unused_result))
#define PACKED __attribute__((packed))
+ #if CPU_ARM | CPU_CM3
+ #define NAKED __attribute__((naked))
+ #else
+ #define NAKED
+ #endif
+
/**
* Force compiler to realod context variable.
*/
#ifndef INLINE
#define INLINE static inline
#endif
+#ifndef NOINLINE
+#define NOINLINE /* nothing */
+#endif
#ifndef NORETURN
#define NORETURN /* nothing */
#endif
typedef unsigned char sigbit_t; /**< Type for signal bits. */
typedef unsigned char sigmask_t; /**< Type for signal masks. */
-typedef unsigned char page_t; /**< Type for banked memory pages. */
/**