X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c0bf08270464302ec402873aed75a459b08e0a8c..011b6e172c0b7366132196dd9797f7bc3b951df2:/src/xbt/mmalloc/mmemalign.c diff --git a/src/xbt/mmalloc/mmemalign.c b/src/xbt/mmalloc/mmemalign.c index c6296fd3be..f475076d49 100644 --- a/src/xbt/mmalloc/mmemalign.c +++ b/src/xbt/mmalloc/mmemalign.c @@ -9,42 +9,35 @@ #include "mmprivate.h" -void * -mmemalign (void *md, size_t alignment, size_t size) +void *mmemalign(void *md, size_t alignment, size_t size) { - void* result; + void *result; unsigned long int adj; struct alignlist *l; struct mdesc *mdp; - if ((result = mmalloc (md, size + alignment - 1)) != NULL) - { - adj = RESIDUAL (result, alignment); - if (adj != 0) - { - mdp = MD_TO_MDP (md); - for (l = mdp -> aligned_blocks; l != NULL; l = l -> next) - { - if (l -> aligned == NULL) - { - /* This slot is free. Use it. */ - break; - } - } - if (l == NULL) - { - l = (struct alignlist *) mmalloc (md, sizeof (struct alignlist)); - if (l == NULL) - { - mfree (md, result); - return (NULL); - } - l -> next = mdp -> aligned_blocks; - mdp -> aligned_blocks = l; - } - l -> exact = result; - result = l -> aligned = (char*) result + alignment - adj; - } + if ((result = mmalloc(md, size + alignment - 1)) != NULL) { + adj = RESIDUAL(result, alignment); + if (adj != 0) { + mdp = MD_TO_MDP(md); + for (l = mdp->aligned_blocks; l != NULL; l = l->next) { + if (l->aligned == NULL) { + /* This slot is free. Use it. */ + break; + } + } + if (l == NULL) { + l = (struct alignlist *) mmalloc(md, sizeof(struct alignlist)); + if (l == NULL) { + mfree(md, result); + return (NULL); + } + l->next = mdp->aligned_blocks; + mdp->aligned_blocks = l; + } + l->exact = result; + result = l->aligned = (char *) result + alignment - adj; } + } return (result); }