From 8f4229a61c311c0fc990c34b280ec91010595bc9 Mon Sep 17 00:00:00 2001 From: Ryan Liptak Date: Wed, 5 Jun 2019 23:36:51 -0700 Subject: [PATCH] std.HashMap: use std.math.ceilPowerOfTwo --- std/hash_map.zig | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/std/hash_map.zig b/std/hash_map.zig index af58ae076..e64bdd09b 100644 --- a/std/hash_map.zig +++ b/std/hash_map.zig @@ -139,9 +139,9 @@ pub fn HashMap(comptime K: type, comptime V: type, comptime hash: fn (key: K) u3 // ensure that the hash map will be at most 60% full if // expected_count items are put into it var optimized_capacity = expected_count * 5 / 3; - // round capacity to the next power of two - const pow = math.log2_int_ceil(usize, optimized_capacity); - return math.pow(usize, 2, pow); + // an overflow here would mean the amount of memory required would not + // be representable in the address space + return math.ceilPowerOfTwo(usize, optimized_capacity) catch unreachable; } /// Increases capacity so that the hash map will be at most