From 2e924150ae29c4312dc9ca730ff9b70827a8b48e Mon Sep 17 00:00:00 2001 From: daan Date: Sun, 11 Aug 2019 11:30:24 -0700 Subject: [PATCH] further layout improvement for msvc code generation --- include/mimalloc-types.h | 6 +++--- src/init.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/mimalloc-types.h b/include/mimalloc-types.h index eca5c2eb..9beeb195 100644 --- a/include/mimalloc-types.h +++ b/include/mimalloc-types.h @@ -167,9 +167,9 @@ typedef struct mi_page_s { #if MI_SECURE uintptr_t cookie; // random cookie to encode the free lists #endif - size_t used; // number of blocks in use (including blocks in `local_free` and `thread_free`) mi_page_flags_t flags; // threadid:62 | has_aligned:1 | in_full:1 - + size_t used; // number of blocks in use (including blocks in `local_free` and `thread_free`) + mi_block_t* local_free; // list of deferred free blocks by this thread (migrates to `free`) volatile uintptr_t thread_freed; // at least this number of blocks are in `thread_free` volatile mi_thread_free_t thread_free; // list of deferred free blocks freed by other threads @@ -182,7 +182,7 @@ typedef struct mi_page_s { // improve page index calculation #if (MI_INTPTR_SIZE==8 && MI_SECURE==0) - // void* padding[1]; // 12 words on 64-bit + void* padding[1]; // 12 words on 64-bit #elif MI_INTPTR_SIZE==4 // void* padding[1]; // 12 words on 32-bit #endif diff --git a/src/init.c b/src/init.c index ad82853e..0261e26b 100644 --- a/src/init.c +++ b/src/init.c @@ -17,11 +17,11 @@ const mi_page_t _mi_page_empty = { #if MI_SECURE 0, #endif - 0, 0, // used, flags + 0, 0, // flags, used NULL, 0, 0, 0, NULL, NULL, NULL #if (MI_INTPTR_SIZE==8 && MI_SECURE==0) - // , { NULL } + , { NULL } #endif };