#ifdef __clang__
#define __INTRIN_INLINE __forceinline
+#define HAS_BUILTIN(x) __has_builtin(x)
#else
+#define HAS_BUILTIN(x) 0
#define __ATTRIBUTE_ARTIFICIAL __attribute__((artificial))
#define __INTRIN_INLINE extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) __ATTRIBUTE_ARTIFICIAL
#endif