MINOR: tools: add a new function atleast2() to test masks for more than 1 bit

For threads it's common to have to check if a mask contains more than
one bit set. Let's have this "atleast2()" function report this.
This commit is contained in:
Willy Tarreau 2018-10-15 09:33:41 +02:00
parent d944344f01
commit 98d334bd94
1 changed files with 6 additions and 0 deletions

View File

@ -801,6 +801,12 @@ static inline unsigned int my_popcountl(unsigned long a)
return cnt;
}
/* returns non-zero if <a> has at least 2 bits set */
static inline unsigned long atleast2(unsigned long a)
{
return a & (a - 1);
}
/* Simple ffs implementation. It returns the position of the lowest bit set to
* one. It is illegal to call it with a==0 (undefined result).
*/