Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/lib/libc/tests/stdbit/stdc_first_trailing_zero_test.c
96309 views
1
/*
2
* Copyright (c) 2025 Robert Clausecker <[email protected]>
3
*
4
* SPDX-License-Identifier: BSD-2-Clause
5
*/
6
7
#define FUNCSTEM stdc_first_trailing_zero
8
#define MKREFFUNC(name, type) \
9
static unsigned \
10
name(type value) \
11
{ \
12
type bit = 1; \
13
unsigned pos = 1; \
14
\
15
value = ~value; \
16
if (value == 0) \
17
return (0); \
18
\
19
while ((bit & value) == 0) { \
20
bit <<= 1; \
21
pos++; \
22
} \
23
\
24
return (pos); \
25
}
26
27
#include "stdbit-test-framework.c"
28
29