Files
ksOS/Kernel/Include/Lib/Align.h
T
2026-05-03 13:05:55 +04:00

23 lines
569 B
C

// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright (c) 2026 0xKSor
#pragma once
#include <Types.h>
static inline UInt64 AlignUp64(UInt64 value, UInt64 alignment) {
return (value + alignment - 1) & ~(alignment - 1);
}
static inline UInt64 AlignDown64(UInt64 value, UInt64 alignment) {
return value & ~(alignment - 1);
}
static inline UInt32 AlignUp32(UInt32 value, UInt32 alignment) {
return (value + alignment - 1) & ~(alignment - 1);
}
static inline UInt32 AlignDown32(UInt32 value, UInt32 alignment) {
return value & ~(alignment - 1);
}