X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/3b9b67271c75a1c42a1f0848f28f4ae3c6fdce16..a831415e35172e5ffe0b7878c5c2ea6e73f35720:/src/xbt/mmalloc/mmalloc.c diff --git a/src/xbt/mmalloc/mmalloc.c b/src/xbt/mmalloc/mmalloc.c index d3c26bbd26..7f50751db3 100644 --- a/src/xbt/mmalloc/mmalloc.c +++ b/src/xbt/mmalloc/mmalloc.c @@ -1,6 +1,6 @@ /* Memory allocator `malloc'. */ -/* Copyright (c) 2010-2020. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2010-2021. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -44,7 +44,7 @@ static void *align(struct mdesc *mdp, size_t size) mmorecore(mdp, adj); result = (char *) result + adj; } - return (result); + return result; } /** Initialize heapinfo about the heapinfo pages :) @@ -70,9 +70,6 @@ static void initialize_heapinfo_heapinfo(const s_xbt_mheap_t* mdp) * properly, we need to make the align function publicly visible, too */ static void initialize(xbt_mheap_t mdp) { - int i; - malloc_info mi; /* to compute the offset of the swag hook */ - // Update mdp meta-data: mdp->heapsize = HEAP / BLOCKSIZE; mdp->heapinfo = (malloc_info *) @@ -89,9 +86,9 @@ static void initialize(xbt_mheap_t mdp) initialize_heapinfo_heapinfo(mdp); - for (i=0;ifraghead[i]), - xbt_swag_offset(mi, freehook)); + for (int i = 0; i < BLOCKLOG; i++) { + malloc_info mi; /* to compute the offset of the swag hook */ + xbt_swag_init(&(mdp->fraghead[i]), xbt_swag_offset(mi, freehook)); } } @@ -109,8 +106,6 @@ static void *register_morecore(struct mdesc *mdp, size_t size) /* Check if we need to grow the info table (in a multiplicative manner) */ if ((size_t) BLOCK((char *) result + size) > mdp->heapsize) { - int it; - size_t newsize = mdp->heapsize; while ((size_t) BLOCK((char *) result + size) > newsize) newsize *= 2; @@ -140,7 +135,7 @@ static void *register_morecore(struct mdesc *mdp, size_t size) /* mark the space previously occupied by the block info as free by first marking it * as occupied in the regular way, and then freing it */ - for (it=0; itheapsize * sizeof(malloc_info)); it++){ + for (int it = 0; it < BLOCKIFY(mdp->heapsize * sizeof(malloc_info)); it++) { newinfo[BLOCK(oldinfo)+it].type = MMALLOC_TYPE_UNFRAGMENTED; newinfo[BLOCK(oldinfo)+it].busy_block.ignore = 0; } @@ -154,7 +149,7 @@ static void *register_morecore(struct mdesc *mdp, size_t size) } mdp->heaplimit = BLOCK((char *) result + size); - return (result); + return result; } /* Allocate memory from the heap. */ @@ -346,5 +341,5 @@ void *mmalloc_no_memset(xbt_mheap_t mdp, size_t size) } - return (result); + return result; }