| 12345678910111213141516171819202122232425262728 | 
							- #pragma once
 
- #include "compiler.h"
 
- #include <stdlib.h>
 
- extern_c no_return __noinline alloc_panic(void);
 
- #define null_check(x) ({			\
 
-     __typeof__(x) __x = (x);			\
 
-     if (unlikely(!__x))				\
 
- 	alloc_panic();				\
 
-     __x;					\
 
- })
 
- extern_c void * __safe_alloc(1)   __malloc_func xmalloc(size_t);
 
- extern_c void * __safe_alloc(1)   __malloc_func xmalloc_dma(size_t);
 
- extern_c void * __safe_alloc(1)   __malloc_func xzalloc(size_t);
 
- extern_c void * __safe_alloc(1,2) __malloc_func xncalloc(size_t, size_t);
 
- extern_c void * __safe_alloc(1,2) __malloc_func xcalloc(size_t, size_t);
 
- extern_c void * __safe_alloc(2)   xrealloc(void *, size_t);
 
- extern_c void * __safe_alloc(2,3) xnrealloc(void *, size_t, size_t);
 
- #define xnew(x)		((x) = xzalloc(sizeof(*(x))))
 
- #define xnnew(x,n)	((x) = xcalloc((n),sizeof(*(x))))
 
- static inline void xfree(void *p)
 
- {
 
-     if (p)
 
- 	free(p);
 
- }
 
 
  |