X-Git-Url: https://git.llucax.com/software/dgc/cdgc.git/blobdiff_plain/10d737a6141dc366b9609c28f251def8b337f3c4..fdc67622a72cf5863d7faa6667f5e526b524568c:/gc/alloc.d diff --git a/gc/alloc.d b/gc/alloc.d index e55c03c..c6a8bd1 100644 --- a/gc/alloc.d +++ b/gc/alloc.d @@ -119,54 +119,47 @@ version (D_Ddoc) // Implementations else static if (is(typeof(VirtualAlloc))) { - void *os_mem_map(size_t nbytes) + void* os_mem_map(size_t nbytes) { return VirtualAlloc(null, nbytes, MEM_RESERVE, PAGE_READWRITE); } - - int os_mem_commit(void *base, size_t offset, size_t nbytes) - { void *p; - - p = VirtualAlloc(base + offset, nbytes, MEM_COMMIT, PAGE_READWRITE); - return cast(int)(p is null); + int os_mem_commit(void* base, size_t offset, size_t nbytes) + { + void* p = VirtualAlloc(base + offset, nbytes, MEM_COMMIT, PAGE_READWRITE); + return cast(int)(p is null); } - - int os_mem_decommit(void *base, size_t offset, size_t nbytes) + int os_mem_decommit(void* base, size_t offset, size_t nbytes) { - return cast(int)(VirtualFree(base + offset, nbytes, MEM_DECOMMIT) == 0); + return cast(int)(VirtualFree(base + offset, nbytes, MEM_DECOMMIT) == 0); } - - int os_mem_unmap(void *base, size_t nbytes) + int os_mem_unmap(void* base, size_t nbytes) { return cast(int)(VirtualFree(base, 0, MEM_RELEASE) == 0); } } else static if (is(typeof(mmap)) && is(typeof(MAP_ANON))) { - void *os_mem_map(size_t nbytes) - { void *p; - - p = mmap(null, nbytes, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); + void* os_mem_map(size_t nbytes) + { + void* p = mmap(null, nbytes, + PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); return (p == MAP_FAILED) ? null : p; } - - int os_mem_commit(void *base, size_t offset, size_t nbytes) + int os_mem_commit(void* base, size_t offset, size_t nbytes) { return 0; } - - int os_mem_decommit(void *base, size_t offset, size_t nbytes) + int os_mem_decommit(void* base, size_t offset, size_t nbytes) { return 0; } - - int os_mem_unmap(void *base, size_t nbytes) + int os_mem_unmap(void* base, size_t nbytes) { return munmap(base, nbytes); } @@ -178,37 +171,32 @@ else static if (is(typeof(malloc))) // to PAGESIZE alignment, there will be space for a void* at the end // after PAGESIZE bytes used by the GC. - import gcx; // for PAGESIZE - const size_t PAGE_MASK = PAGESIZE - 1; - - void *os_mem_map(size_t nbytes) - { byte *p, q; - p = cast(byte *) malloc(nbytes + PAGESIZE); + void* os_mem_map(size_t nbytes) + { + byte* p, q; + p = cast(byte* ) malloc(nbytes + PAGESIZE); q = p + ((PAGESIZE - ((cast(size_t) p & PAGE_MASK))) & PAGE_MASK); - * cast(void**)(q + nbytes) = p; + *cast(void**)(q + nbytes) = p; return q; } - - int os_mem_commit(void *base, size_t offset, size_t nbytes) + int os_mem_commit(void* base, size_t offset, size_t nbytes) { return 0; } - - int os_mem_decommit(void *base, size_t offset, size_t nbytes) + int os_mem_decommit(void* base, size_t offset, size_t nbytes) { return 0; } - - int os_mem_unmap(void *base, size_t nbytes) + int os_mem_unmap(void* base, size_t nbytes) { - free( *cast(void**)( cast(byte*) base + nbytes ) ); + free(*cast(void**)(cast(byte*) base + nbytes)); return 0; } }