xref: /netbsd-src/common/lib/libc/arch/riscv/string/ffs.c (revision 6cf6fe02a981b55727c49c3d37b0d8191a98c0ee)
1*6cf6fe02Smatt /* $NetBSD: ffs.c,v 1.1 2014/09/19 17:36:24 matt Exp $ */
2*6cf6fe02Smatt 
3*6cf6fe02Smatt #include <sys/cdefs.h>
4*6cf6fe02Smatt 
5*6cf6fe02Smatt __strong_alias(ffs, __ffssi2);
6*6cf6fe02Smatt int	__ffssi2(int);
7*6cf6fe02Smatt 
8*6cf6fe02Smatt int
__ffssi2(int i)9*6cf6fe02Smatt __ffssi2(int i)
10*6cf6fe02Smatt {
11*6cf6fe02Smatt 	return i == 0 ? 0 : __buildint_ctz(i) + 1;
12*6cf6fe02Smatt }
13