From: corinna Date: Tue, 12 Aug 2003 10:23:39 +0000 (+0000) Subject: * include/sys/param.h (NBBY): Define if not defined. X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=c393c10a4830d78878f8367850e53304d8b0d5f6;p=pf3gnuchains%2Fsourceware.git * include/sys/param.h (NBBY): Define if not defined. * include/sys/param.h (setbit): Add new bitmap related macro. (clrbit): Likewise. (isset): Likewise. (isclr): Likewise. (howmany): Add new counting/rounding macro. (rounddown): Likewise. (roundup): Likewise. (roundup2): Likewise. (powerof2): Likewise (MIN): Add macro for calculating min. (MAX): Add macro for calculating max. --- diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index cfd58efee6..5f9c76fc2f 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,21 @@ +2003-08-12 Corinna Vinschen + + * include/sys/param.h (NBBY): Define if not defined. + +2003-08-12 Nicholas Wourms + + * include/sys/param.h (setbit): Add new bitmap related macro. + (clrbit): Likewise. + (isset): Likewise. + (isclr): Likewise. + (howmany): Add new counting/rounding macro. + (rounddown): Likewise. + (roundup): Likewise. + (roundup2): Likewise. + (powerof2): Likewise + (MIN): Add macro for calculating min. + (MAX): Add macro for calculating max. + 2003-08-09 Christopher Faylor * include/cygwin/version.h: Bump DLL minor number to 3. diff --git a/winsup/cygwin/include/sys/param.h b/winsup/cygwin/include/sys/param.h index 5469cc70be..811b5ee565 100644 --- a/winsup/cygwin/include/sys/param.h +++ b/winsup/cygwin/include/sys/param.h @@ -53,4 +53,27 @@ #define NULL 0L #endif +#ifndef NBBY +#define NBBY 8 +#endif + +/* Bit map related macros. */ +#define setbit(a,i) ((a)[(i)/NBBY] |= 1<<((i)%NBBY)) +#define clrbit(a,i) ((a)[(i)/NBBY] &= ~(1<<((i)%NBBY))) +#define isset(a,i) ((a)[(i)/NBBY] & (1<<((i)%NBBY))) +#define isclr(a,i) (((a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0) + +/* Macros for counting and rounding. */ +#ifndef howmany +#define howmany(x, y) (((x)+((y)-1))/(y)) +#endif +#define rounddown(x, y) (((x)/(y))*(y)) +#define roundup(x, y) ((((x)+((y)-1))/(y))*(y)) /* to any y */ +#define roundup2(x, y) (((x)+((y)-1))&(~((y)-1))) /* if y is powers of two */ +#define powerof2(x) ((((x)-1)&(x))==0) + +/* Macros for min/max. */ +#define MIN(a,b) (((a)<(b))?(a):(b)) +#define MAX(a,b) (((a)>(b))?(a):(b)) + #endif