diff options
author | Daan Leijen <daan@microsoft.com> | 2021-12-18 11:11:54 -0800 |
---|---|---|
committer | Daan Leijen <daan@microsoft.com> | 2021-12-18 11:11:54 -0800 |
commit | 78e2e580f800b08a3dbb6d2eb383a55269a0f862 (patch) | |
tree | 05691b74cf6f938d5bb93c38d7de2c2a30092cb6 /test | |
parent | 3d35147aba3463405b09821e66abfc0a1992b4c0 (diff) | |
parent | 89090510bd965ca48a83857eaa6b6e78a951bf7e (diff) |
Merge branch 'dev' into dev-slice
Diffstat (limited to 'test')
-rw-r--r-- | test/test-api.c | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/test/test-api.c b/test/test-api.c index 56835d0..9681733 100644 --- a/test/test-api.c +++ b/test/test-api.c @@ -159,20 +159,26 @@ int main(void) { void* p = mi_malloc_aligned(4097,4096); size_t usable = mi_usable_size(p); result = usable >= 4097 && usable < 10000; mi_free(p); }); CHECK_BODY("malloc-aligned6", { - void* p; bool ok = true; - for (int i = 1; i < 8 && ok; i++) { - size_t align = (size_t)1 << i; - p = mi_malloc_aligned(2*align, align); - ok = (p != NULL && (uintptr_t)(p) % align == 0); mi_free(p); + for (size_t align = 1; align <= MI_ALIGNMENT_MAX && ok; align *= 2) { + void* ps[8]; + for (int i = 0; i < 8 && ok; i++) { + ps[i] = mi_malloc_aligned(align/2 /*size*/, align); + if (ps[i] == NULL || (uintptr_t)(ps[i]) % align != 0) { + ok = false; + } + } + for (int i = 0; i < 8 && ok; i++) { + mi_free(ps[i]); + } } result = ok; }); CHECK_BODY("malloc-aligned7", { - void* p = mi_malloc_aligned(1024,MI_ALIGNED_MAX); mi_free(p); + void* p = mi_malloc_aligned(1024,MI_ALIGNMENT_MAX); mi_free(p); }); CHECK_BODY("malloc-aligned8", { - void* p = mi_malloc_aligned(1024,2*MI_ALIGNED_MAX); mi_free(p); + void* p = mi_malloc_aligned(1024,2*MI_ALIGNMENT_MAX); mi_free(p); }); CHECK_BODY("malloc-aligned-at1", { void* p = mi_malloc_aligned_at(48,32,0); result = (p != NULL && ((uintptr_t)(p) + 0) % 32 == 0); mi_free(p); |