#include <ntifs.h>
#include <linux/types.h>
Go to the source code of this file.
◆ ffz
find_next_bit - find the next set bit in a memory region @addr: The address to base the search on @offset: The bitnumber to start searching at @size: The maximum size to search
Definition at line 109 of file bitops.h.
◆ find_first_zero_bit
find_first_zero_bit - find the first zero bit in a memory region @addr: The address to start the search at @size: The maximum size to search
Returns the bit number of the first zero bit, not the number of the byte containing a bit.
Definition at line 28 of file bitops.h.
◆ for_each_bit
Value:long find_next_bit(const unsigned long *addr, long size, long offset)
GLenum const GLvoid * addr
static unsigned find_first_bit(const unsigned long *addr, unsigned size)
Definition at line 194 of file bitops.h.
◆ __ffs()
__ffs - find first bit in word. @word: The word to search
Undefined if no bit exists, so code should check against 0 first.
Definition at line 44 of file bitops.h.
48 #if BITS_PER_LONG == 64 49 if ((
word & 0xffffffff) == 0) {
54 if ((
word & 0xffff) == 0) {
58 if ((
word & 0xff) == 0) {
62 if ((
word & 0xf) == 0) {
66 if ((
word & 0x3) == 0) {
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
Referenced by find_first_bit().
◆ ffs()
ffs - find first bit set @x: the word to search
This is defined the same way as the libc and compiler builtin ffs routines, therefore differs in spirit from the above ffz (man ffs).
Definition at line 120 of file bitops.h.
GLdouble GLdouble GLdouble r
GLint GLint GLint GLint GLint x
◆ find_first_bit()
find_first_bit - find the first set bit in a memory region @addr: The address to start the search at @size: The maximum size to search
Returns the bit number of the first set bit, not the number of the byte containing a bit.
Definition at line 83 of file bitops.h.
91 x += (
sizeof(*addr)<<3);
static unsigned long __ffs(unsigned long word)
GLint GLint GLint GLint GLint x
GLenum const GLvoid * addr
◆ find_next_zero_bit()
find_next_zero_bit - find the first zero bit in a memory region @addr: The address to base the search on @offset: The bit number to start searching at @size: The maximum size to search
◆ fls()
fls - find last (most-significant) bit set @x: the word to search
This is defined the same way as ffs. Note fls(0) = 0, fls(1) = 1, fls(0x80000000) = 32.
Definition at line 157 of file bitops.h.
163 if (!(
x & 0xffff0000u)) {
167 if (!(
x & 0xff000000u)) {
171 if (!(
x & 0xf0000000u)) {
175 if (!(
x & 0xc0000000u)) {
179 if (!(
x & 0x80000000u)) {
GLdouble GLdouble GLdouble r
GLint GLint GLint GLint GLint x
Referenced by __attribute__(), adns__findlabel_next(), adns__findlabel_start(), adns__findrr_anychk(), adns__mkquery_frdgram(), adns__parse_domain(), adns__parse_domain_more(), fls64(), fls_long(), get_bitmask_order(), get_count_order(), pa_ptr(), pap_mailbox822(), test_FiberLocalStorage(), and test_FiberLocalStorageCallback().
◆ fls64()
Definition at line 186 of file bitops.h.
GLint GLint GLint GLint GLint x
GLfloat GLfloat GLfloat GLfloat h
Referenced by fls_long().
◆ fls_long()
Definition at line 239 of file bitops.h.
static int fls64(__u64 x)
◆ get_bitmask_order()
Definition at line 200 of file bitops.h.
GLuint GLdouble GLdouble GLint GLint order
GLuint GLuint GLsizei count
◆ get_count_order()
Definition at line 208 of file bitops.h.
GLuint GLdouble GLdouble GLint GLint order
GLuint GLuint GLsizei count
◆ hweight32()
Definition at line 251 of file bitops.h.
253 unsigned int res = (
w & 0x55555555) + ((
w >> 1) & 0x55555555);
254 res = (
res & 0x33333333) + ((
res >> 2) & 0x33333333);
255 res = (
res & 0x0F0F0F0F) + ((
res >> 4) & 0x0F0F0F0F);
256 res = (
res & 0x00FF00FF) + ((
res >> 8) & 0x00FF00FF);
257 return (
res & 0x0000FFFF) + ((
res >> 16) & 0x0000FFFF);
GLubyte GLubyte GLubyte GLubyte w
Referenced by hweight64(), and hweight_long().
◆ hweight64()
Definition at line 260 of file bitops.h.
262 #if BITS_PER_LONG < 64 266 res = (
w & 0x5555555555555555
U) + ((
w >> 1) & 0x5555555555555555
U);
267 res = (
res & 0x3333333333333333
U) + ((
res >> 2) & 0x3333333333333333
U);
268 res = (
res & 0x0F0F0F0F0F0F0F0F
U) + ((
res >> 4) & 0x0F0F0F0F0F0F0F0F
U);
269 res = (
res & 0x00FF00FF00FF00FF
U) + ((
res >> 8) & 0x00FF00FF00FF00FF
U);
270 res = (
res & 0x0000FFFF0000FFFF
U) + ((
res >> 16) & 0x0000FFFF0000FFFF
U);
271 return (
res & 0x00000000FFFFFFFFU) + ((
res >> 32) & 0x00000000FFFFFFFFU);
GLubyte GLubyte GLubyte GLubyte w
static unsigned long hweight32(unsigned long w)
Referenced by hweight_long().
◆ hweight_long()
Definition at line 275 of file bitops.h.
static unsigned long hweight64(__u64 w)
GLubyte GLubyte GLubyte GLubyte w
static unsigned long hweight32(unsigned long w)
◆ rol32()
rol32 - rotate a 32-bit value left @word: value to rotate @shift: bits to roll
Definition at line 224 of file bitops.h.
◆ ror32()
ror32 - rotate a 32-bit value right @word: value to rotate @shift: bits to roll
Definition at line 234 of file bitops.h.