Files
corelang/programs/base.kl
Krzosa Karol e4e939ec04 Restructure
2022-06-14 14:28:29 +02:00

25 lines
464 B
Plaintext

Os :: #import "os.kl"
SizeU :: #strict U64
Arena :: struct
memory: Os.Memory
alignment: U64
len: U64
clamp_top_sizeu :: (val: SizeU, max: SizeU): SizeU
if val > max
return max
return val
get_align_offset :: (size: SizeU, align: SizeU): SizeU
mask := align - 1
val := size & mask
if val != 0
val = align - val
return val
align_up :: (size: SizeU, align: SizeU): SizeU
result := size + get_align_offset(size, align)
return result