From d953e40fb30daecb4571e600d64a19a9dd2baac4 Mon Sep 17 00:00:00 2001 From: Jeroen van Rijn Date: Fri, 23 Jul 2021 22:47:44 +0200 Subject: big: Add `pow`. --- core/math/big/basic.odin | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'core/math/big/basic.odin') diff --git a/core/math/big/basic.odin b/core/math/big/basic.odin index fbb533ddf..18186b38c 100644 --- a/core/math/big/basic.odin +++ b/core/math/big/basic.odin @@ -516,7 +516,7 @@ int_mul_digit :: proc(dest, src: ^Int, multiplier: DIGIT) -> (err: Error) { } if is_power_of_two(int(multiplier)) { ix: int; - if ix, err = log_n(multiplier, 2); err != .None { return err; } + if ix, err = log(multiplier, 2); err != .None { return err; } return shl(dest, src, ix); } @@ -648,6 +648,11 @@ int_mul :: proc(dest, src, multiplier: ^Int) -> (err: Error) { mul :: proc { int_mul, int_mul_digit, }; +sqr :: proc(dest, src: ^Int) -> (err: Error) { + return mul(dest, src, src); +} + + /* ========================== Low-level routines -- cgit v1.2.3