31#include <sys/libkern.h>
32#include <sys/limits.h>
54static const unsigned long mask01 = 0x01010101;
55static const unsigned long mask80 = 0x80808080;
57static const unsigned long mask01 = 0x0101010101010101;
58static const unsigned long mask80 = 0x8080808080808080;
60#error Unsupported word size
63#define LONGPTR_MASK (sizeof(long) - 1)
72 return (p - str + x); \
79 const unsigned long *lp;
92 lp = (
const unsigned long *)((uintptr_t)str & ~LONGPTR_MASK);
94 vb = ((~*lp) & mask80);
98 for (p = str; p < (
const char *)lp; p++)
105 vb = ((~*lp) & mask80);
107 p = (
const char *)(lp);
size_t() strlen(const char *str)