mirror of
https://github.com/ziglang/zig.git
synced 2026-01-21 14:55:25 +00:00
std.heap.SmpAllocator: fix using wrong size class indices
This commit is contained in:
parent
839c453d88
commit
1ffae59fec
@ -215,13 +215,11 @@ fn free(context: *anyopaque, memory: []u8, alignment: mem.Alignment, ra: usize)
|
||||
|
||||
fn sizeClassIndex(len: usize, alignment: mem.Alignment) usize {
|
||||
return @max(
|
||||
@bitSizeOf(usize) - @clz(len - 1),
|
||||
@intFromEnum(alignment),
|
||||
min_class,
|
||||
);
|
||||
@bitSizeOf(usize) - @clz(len + (@sizeOf(usize) - 1)),
|
||||
@intFromEnum(alignment) + 1,
|
||||
) - min_class;
|
||||
}
|
||||
|
||||
fn slotSize(class: usize) usize {
|
||||
const Log2USize = std.math.Log2Int(usize);
|
||||
return @as(usize, 1) << @as(Log2USize, @intCast(class));
|
||||
return @as(usize, 1) << @intCast(class + min_class);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user