raw_alloc and raw_resize can take an alignment argument
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Mon, 4 Jan 2021 15:40:54 +0000 (09:40 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Mon, 4 Jan 2021 15:40:54 +0000 (09:40 -0600)
core/builtin.onyx

index 9e4dbeb80f9534577123026c658345112e814c92..643ecedeb5a65cd2e04858de63de63be119367f0 100644 (file)
@@ -56,12 +56,12 @@ Allocator :: struct {
     func: allocator_proc;
 }
 
-raw_alloc :: proc (use a: Allocator, size: u32) -> rawptr {
-    return func(data, AllocationAction.Alloc, size, __DEFAULT_ALLOCATION_ALIGNMENT, null);
+raw_alloc :: proc (use a: Allocator, size: u32, alignment := __DEFAULT_ALLOCATION_ALIGNMENT) -> rawptr {
+    return func(data, AllocationAction.Alloc, size, alignment, null);
 }
 
-raw_resize :: proc (use a: Allocator, ptr: rawptr, size: u32) -> rawptr {
-    return func(data, AllocationAction.Resize, size, __DEFAULT_ALLOCATION_ALIGNMENT, ptr);
+raw_resize :: proc (use a: Allocator, ptr: rawptr, size: u32, alignment := __DEFAULT_ALLOCATION_ALIGNMENT) -> rawptr {
+    return func(data, AllocationAction.Resize, size, alignment, ptr);
 }
 
 raw_free :: proc (use a: Allocator, ptr: rawptr) {