summaryrefslogtreecommitdiff
path: root/src/alloc-aligned.c
diff options
context:
space:
mode:
authordaan <daanl@outlook.com>2019-07-18 18:59:32 -0700
committerdaan <daanl@outlook.com>2019-07-18 18:59:32 -0700
commitc228ecefd8c183b5992aa9dd71922dff33a568b4 (patch)
tree1c15762c721b787a0ca59f7a61ad81501dadf8d1 /src/alloc-aligned.c
parentf646cc925dab5116a3677e9045cda169d9b9527c (diff)
update for new dynamic direction on windows 64-bit
Diffstat (limited to 'src/alloc-aligned.c')
-rw-r--r--src/alloc-aligned.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/alloc-aligned.c b/src/alloc-aligned.c
index 3ef93c8..175fa3e 100644
--- a/src/alloc-aligned.c
+++ b/src/alloc-aligned.c
@@ -150,3 +150,14 @@ void* mi_realloc_aligned_at(void* p, size_t newsize, size_t alignment, size_t of
void* mi_realloc_aligned(void* p, size_t newsize, size_t alignment) mi_attr_noexcept {
return mi_heap_realloc_aligned(mi_get_default_heap(), p, newsize, alignment);
}
+
+void* mi_aligned_offset_recalloc(void* p, size_t size, size_t newcount, size_t alignment, size_t offset) mi_attr_noexcept {
+ size_t newsize;
+ if (mi_mul_overflow(size,newcount,&newsize)) return NULL;
+ return mi_heap_realloc_zero_aligned_at(mi_get_default_heap(), p, newsize, alignment, offset, true );
+}
+void* mi_aligned_recalloc(void* p, size_t size, size_t newcount, size_t alignment) mi_attr_noexcept {
+ size_t newsize;
+ if (mi_mul_overflow(size, newcount, &newsize)) return NULL;
+ return mi_heap_realloc_zero_aligned(mi_get_default_heap(), p, newsize, alignment, true );
+}