blob: bd0ee307743d51003ef158b8772e463224b4a054 [file] [log] [blame]
Eric Biederman8ca8d762003-04-22 19:02:15 +00001#ifndef STDLIB_H
2#define STDLIB_H
3
4#include <stddef.h>
5
Uwe Hermann55e6eba2007-10-27 20:05:21 +00006#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
7
Stefan Reinauerd40393e2012-03-30 13:00:46 -07008#define ALIGN(x,a) __ALIGN_MASK(x,(typeof(x))(a)-1UL)
Rudolf Marek79e53252008-12-23 17:34:15 +00009#define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask))
10
Rudolf Marekc2213492008-03-19 20:24:33 +000011#define MIN(a,b) ((a) < (b) ? (a) : (b))
12#define MAX(a,b) ((a) > (b) ? (a) : (b))
13
Stefan Reinauer35b6bbb2010-03-28 21:26:54 +000014#if !defined(__PRE_RAM__)
Ron Minnicheb596362012-04-11 10:30:15 -070015void *memalign(size_t boundary, size_t size);
Stefan Reinauer6bd571e2009-09-25 21:59:57 +000016void *malloc(size_t size);
Eric Biederman8ca8d762003-04-22 19:02:15 +000017void free(void *ptr);
Corey Osgood908ff5e2007-11-07 19:02:35 +000018#endif
Eric Biederman8ca8d762003-04-22 19:02:15 +000019
20#endif /* STDLIB_H */