c3052bd209007e62fb47e1aa29125fc8494f8fa6
[coreboot.git] / src / include / stdlib.h
1 #ifndef STDLIB_H
2 #define STDLIB_H
3
4 #include <stddef.h>
5
6 #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
7
8 #define ALIGN(x,a)              __ALIGN_MASK(x,(typeof(x))(a)-1)
9 #define __ALIGN_MASK(x,mask)    (((x)+(mask))&~(mask))
10
11 #define MIN(a,b) ((a) < (b) ? (a) : (b))
12 #define MAX(a,b) ((a) > (b) ? (a) : (b))
13
14 #ifndef __ROMCC__
15 extern void *malloc(size_t size);
16 void free(void *ptr);
17
18 /* Extensions to malloc... */
19 typedef size_t malloc_mark_t;
20 void malloc_mark(malloc_mark_t *place);
21 void malloc_release(malloc_mark_t *place);
22 #endif
23
24 #endif /* STDLIB_H */