From 3e45412327a2654a77944249962b3652e6142299 Mon Sep 17 00:00:00 2001 From: Ondřej Surý Date: Mon, 17 Jan 2011 12:40:45 +0100 Subject: Imported Upstream version 2011.01.12 --- src/pkg/runtime/freebsd/mem.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'src/pkg/runtime/freebsd/mem.c') diff --git a/src/pkg/runtime/freebsd/mem.c b/src/pkg/runtime/freebsd/mem.c index 52e351a7d..7fb2c2807 100644 --- a/src/pkg/runtime/freebsd/mem.c +++ b/src/pkg/runtime/freebsd/mem.c @@ -4,14 +4,21 @@ #include "malloc.h" void* -SysAlloc(uintptr n) +runtime·SysAlloc(uintptr n) { + void *v; + mstats.sys += n; - return runtime_mmap(nil, n, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_ANON|MAP_PRIVATE, -1, 0); + v = runtime·mmap(nil, n, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_ANON|MAP_PRIVATE, -1, 0); + if(v < (void*)4096) { + runtime·printf("mmap: errno=%p\n", v); + runtime·throw("mmap"); + } + return v; } void -SysUnused(void *v, uintptr n) +runtime·SysUnused(void *v, uintptr n) { USED(v); USED(n); @@ -19,10 +26,14 @@ SysUnused(void *v, uintptr n) } void -SysFree(void *v, uintptr n) +runtime·SysFree(void *v, uintptr n) { - USED(v); - USED(n); - // TODO(rsc): call munmap + mstats.sys -= n; + runtime·munmap(v, n); } + +void +runtime·SysMemInit(void) +{ +} -- cgit v1.2.3