Restructure os code
This commit is contained in:
24
base.kl
Normal file
24
base.kl
Normal file
@@ -0,0 +1,24 @@
|
||||
Os :: #import "os_windows.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
|
||||
Reference in New Issue
Block a user