Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions std/hash_map.zig
Original file line number Diff line number Diff line change
Expand Up @@ -157,8 +157,7 @@ pub fn HashMap(comptime K: type, comptime V: type, comptime hash: fn (key: K) u3
fn ensureCapacityExact(self: *Self, new_capacity: usize) !void {
// capacity must always be a power of two to allow for modulo
// optimization in the constrainIndex fn
const is_power_of_two = new_capacity & (new_capacity - 1) == 0;
assert(is_power_of_two);
assert(math.isPowerOfTwo(new_capacity));

if (new_capacity <= self.entries.len) {
return;
Expand Down
2 changes: 1 addition & 1 deletion std/math/big/int.zig
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ pub const Int = struct {
}

// Power of two: can do a single pass and use masks to extract digits.
if (base & (base - 1) == 0) {
if (math.isPowerOfTwo(base)) {
const base_shift = math.log2_int(Limb, base);

for (self.limbs[0..self.len()]) |limb| {
Expand Down
2 changes: 1 addition & 1 deletion std/segmented_list.zig
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,9 @@ pub fn SegmentedList(comptime T: type, comptime prealloc_item_count: usize) type
const prealloc_exp = blk: {
// we don't use the prealloc_exp constant when prealloc_item_count is 0.
assert(prealloc_item_count != 0);
assert(std.math.isPowerOfTwo(prealloc_item_count));

const value = std.math.log2_int(usize, prealloc_item_count);
assert((1 << value) == prealloc_item_count); // prealloc_item_count must be a power of 2
break :blk @typeOf(1)(value);
};
const ShelfIndex = std.math.Log2Int(usize);
Expand Down