summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rts/Linker.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/rts/Linker.c b/rts/Linker.c
index b193149184..4961ecf053 100644
--- a/rts/Linker.c
+++ b/rts/Linker.c
@@ -2057,11 +2057,15 @@ void freeObjectCode (ObjectCode *oc)
sysErrorBelch("munmap");
}
+#if defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH) || defined(arm_HOST_ARCH)
+#if !defined(x86_64_HOST_ARCH) || !defined(mingw32_HOST_OS)
if (!USE_CONTIGUOUS_MMAP)
{
munmap(oc->symbol_extras,
ROUND_UP(sizeof(SymbolExtra) * oc->n_symbol_extras, pagesize));
}
+#endif
+#endif
#else
@@ -2073,7 +2077,6 @@ void freeObjectCode (ObjectCode *oc)
#endif
#endif
-
#endif
stgFree(oc->fileName);