Lines Matching refs:val
17 MEM_STATIC unsigned ZSTD_countTrailingZeros32_fallback(U32 val) in ZSTD_countTrailingZeros32_fallback() argument
19 assert(val != 0); in ZSTD_countTrailingZeros32_fallback()
25 return DeBruijnBytePos[((U32) ((val & -(S32) val) * 0x077CB531U)) >> 27]; in ZSTD_countTrailingZeros32_fallback()
29 MEM_STATIC unsigned ZSTD_countTrailingZeros32(U32 val) in ZSTD_countTrailingZeros32() argument
31 assert(val != 0); in ZSTD_countTrailingZeros32()
33 return (unsigned)__builtin_ctz(val); in ZSTD_countTrailingZeros32()
35 return ZSTD_countTrailingZeros32_fallback(val); in ZSTD_countTrailingZeros32()
39 MEM_STATIC unsigned ZSTD_countLeadingZeros32_fallback(U32 val) in ZSTD_countLeadingZeros32_fallback() argument
41 assert(val != 0); in ZSTD_countLeadingZeros32_fallback()
47 val |= val >> 1; in ZSTD_countLeadingZeros32_fallback()
48 val |= val >> 2; in ZSTD_countLeadingZeros32_fallback()
49 val |= val >> 4; in ZSTD_countLeadingZeros32_fallback()
50 val |= val >> 8; in ZSTD_countLeadingZeros32_fallback()
51 val |= val >> 16; in ZSTD_countLeadingZeros32_fallback()
52 return 31 - DeBruijnClz[(val * 0x07C4ACDDU) >> 27]; in ZSTD_countLeadingZeros32_fallback()
56 MEM_STATIC unsigned ZSTD_countLeadingZeros32(U32 val) in ZSTD_countLeadingZeros32() argument
58 assert(val != 0); in ZSTD_countLeadingZeros32()
60 return (unsigned)__builtin_clz(val); in ZSTD_countLeadingZeros32()
62 return ZSTD_countLeadingZeros32_fallback(val); in ZSTD_countLeadingZeros32()
66 MEM_STATIC unsigned ZSTD_countTrailingZeros64(U64 val) in ZSTD_countTrailingZeros64() argument
68 assert(val != 0); in ZSTD_countTrailingZeros64()
70 return (unsigned)__builtin_ctzll(val); in ZSTD_countTrailingZeros64()
73 U32 mostSignificantWord = (U32)(val >> 32); in ZSTD_countTrailingZeros64()
74 U32 leastSignificantWord = (U32)val; in ZSTD_countTrailingZeros64()
84 MEM_STATIC unsigned ZSTD_countLeadingZeros64(U64 val) in ZSTD_countLeadingZeros64() argument
86 assert(val != 0); in ZSTD_countLeadingZeros64()
88 return (unsigned)(__builtin_clzll(val)); in ZSTD_countLeadingZeros64()
91 U32 mostSignificantWord = (U32)(val >> 32); in ZSTD_countLeadingZeros64()
92 U32 leastSignificantWord = (U32)val; in ZSTD_countLeadingZeros64()
102 MEM_STATIC unsigned ZSTD_NbCommonBytes(size_t val) in ZSTD_NbCommonBytes() argument
106 return ZSTD_countTrailingZeros64((U64)val) >> 3; in ZSTD_NbCommonBytes()
108 return ZSTD_countTrailingZeros32((U32)val) >> 3; in ZSTD_NbCommonBytes()
112 return ZSTD_countLeadingZeros64((U64)val) >> 3; in ZSTD_NbCommonBytes()
114 return ZSTD_countLeadingZeros32((U32)val) >> 3; in ZSTD_NbCommonBytes()
119 MEM_STATIC unsigned ZSTD_highbit32(U32 val) /* compress, dictBuilder, decodeCorpus */ in ZSTD_highbit32() argument
121 assert(val != 0); in ZSTD_highbit32()
122 return 31 - ZSTD_countLeadingZeros32(val); in ZSTD_highbit32()