authorgravatar for jgollenz@outlook.comJonas Gollenz <jgollenz@outlook.com> 2022-08-24 01:35:45+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-08-24 17:18:29-04:00
log07afd5bdbaef991a177e2df03af0502fce5dde23
treed5299211e1c06b650b6518270d562de722f0da22
parentd8e22fcb208e2b52b272fb2c988f2123773b23e8

docs: remove confusion about align[For|Back]ward


1 files changed, 5 insertions(+), 5 deletions(-)

lib/std/mem.zig+5-5
......@@ -3252,13 +3252,13 @@ test "sliceAsBytes preserves pointer attributes" {
32523252 try testing.expectEqual(in.alignment, out.alignment);
32533253}
32543254
3255/// Round an address up to the nearest aligned address
3255/// Round an address up to the next (or current) aligned address.
32563256/// The alignment must be a power of 2 and greater than 0.
32573257pub fn alignForward(addr: usize, alignment: usize) usize {
32583258 return alignForwardGeneric(usize, addr, alignment);
32593259}
32603260
3261/// Round an address up to the nearest aligned address
3261/// Round an address up to the next (or current) aligned address.
32623262/// The alignment must be a power of 2 and greater than 0.
32633263pub fn alignForwardGeneric(comptime T: type, addr: T, alignment: T) T {
32643264 return alignBackwardGeneric(T, addr + (alignment - 1), alignment);
......@@ -3290,7 +3290,7 @@ test "alignForward" {
32903290 try testing.expect(alignForward(17, 8) == 24);
32913291}
32923292
3293/// Round an address up to the previous aligned address
3293/// Round an address down to the previous (or current) aligned address.
32943294/// Unlike `alignBackward`, `alignment` can be any positive number, not just a power of 2.
32953295pub fn alignBackwardAnyAlign(i: usize, alignment: usize) usize {
32963296 if (@popCount(alignment) == 1)
......@@ -3299,13 +3299,13 @@ pub fn alignBackwardAnyAlign(i: usize, alignment: usize) usize {
32993299 return i - @mod(i, alignment);
33003300}
33013301
3302/// Round an address up to the previous aligned address
3302/// Round an address down to the previous (or current) aligned address.
33033303/// The alignment must be a power of 2 and greater than 0.
33043304pub fn alignBackward(addr: usize, alignment: usize) usize {
33053305 return alignBackwardGeneric(usize, addr, alignment);
33063306}
33073307
3308/// Round an address up to the previous aligned address
3308/// Round an address down to the previous (or current) aligned address.
33093309/// The alignment must be a power of 2 and greater than 0.
33103310pub fn alignBackwardGeneric(comptime T: type, addr: T, alignment: T) T {
33113311 assert(@popCount(alignment) == 1);