162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * arch/alpha/lib/fls.c
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#include <linux/module.h>
762306a36Sopenharmony_ci#include <linux/bitops.h>
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci/* This is fls(x)-1, except zero is held to zero.  This allows most
1062306a36Sopenharmony_ci   efficient input into extbl, plus it allows easy handling of fls(0)=0.  */
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciconst unsigned char __flsm1_tab[256] =
1362306a36Sopenharmony_ci{
1462306a36Sopenharmony_ci  0,
1562306a36Sopenharmony_ci  0,
1662306a36Sopenharmony_ci  1, 1,
1762306a36Sopenharmony_ci  2, 2, 2, 2,
1862306a36Sopenharmony_ci  3, 3, 3, 3, 3, 3, 3, 3,
1962306a36Sopenharmony_ci  4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
2262306a36Sopenharmony_ci  5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
2562306a36Sopenharmony_ci  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
2662306a36Sopenharmony_ci  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
2762306a36Sopenharmony_ci  6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3062306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3162306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3262306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3362306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3462306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3562306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3662306a36Sopenharmony_ci  7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
3762306a36Sopenharmony_ci};
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ciEXPORT_SYMBOL(__flsm1_tab);
40