brintos

brintos / linux-shallow public Read only

0
0
Text · 629 B · 0cf426e Raw
33 lines · c
1// SPDX-License-Identifier: GPL-2.02/*3 * An integer based power function4 *5 * Derived from drivers/video/backlight/pwm_bl.c6 */7 8#include <linux/export.h>9#include <linux/math.h>10#include <linux/types.h>11 12/**13 * int_pow - computes the exponentiation of the given base and exponent14 * @base: base which will be raised to the given power15 * @exp: power to be raised to16 *17 * Computes: pow(base, exp), i.e. @base raised to the @exp power18 */19u64 int_pow(u64 base, unsigned int exp)20{21	u64 result = 1;22 23	while (exp) {24		if (exp & 1)25			result *= base;26		exp >>= 1;27		base *= base;28	}29 30	return result;31}32EXPORT_SYMBOL_GPL(int_pow);33