added a few useful macros
This commit is contained in:
parent
73231a29d7
commit
d7cb283e44
@ -628,6 +628,15 @@ typedef struct moo_t moo_t;
|
||||
#define MOO_TYPE_MIN(type) \
|
||||
((MOO_TYPE_IS_SIGNED(type)? MOO_TYPE_SIGNED_MIN(type): MOO_TYPE_UNSIGNED_MIN(type)))
|
||||
|
||||
/* round up a positive integer x to the nearst multiple of y */
|
||||
#define MOO_ALIGN(x,y) ((((x) + (y) - 1) / (y)) * (y))
|
||||
|
||||
/* round up a positive integer x to the nearst multiple of y where
|
||||
* y must be a multiple of a power of 2*/
|
||||
#define MOO_ALIGN_POW2(x,y) ((((x) + (y) - 1)) & ~((y) - 1))
|
||||
|
||||
#define MOO_IS_UNALIGNED_POW2(x,y) ((x) & ((y) - 1))
|
||||
#define MOO_IS_ALIGNED_POW2(x,y) (!MOO_IS_UNALIGNED_POW2(x,y))
|
||||
|
||||
/* =========================================================================
|
||||
* COMPILER FEATURE TEST MACROS
|
||||
|
@ -102,8 +102,6 @@
|
||||
# define MOO_MEMCMP(dst,src,size) memcmp(dst,src,size)
|
||||
#endif
|
||||
|
||||
#define MOO_ALIGN(x,y) ((((x) + (y) - 1) / (y)) * (y))
|
||||
|
||||
|
||||
/* ========================================================================= */
|
||||
/* CLASS SPEC ENCODING */
|
||||
|
Loading…
x
Reference in New Issue
Block a user