A new user interface for you! Read more...

File 0119-erts-Remove-low-memory-demand-for-hipe-amd64-code.patch of Package erlang

From 250f6d74e645968d036bad14d5b92907ff4d7342 Mon Sep 17 00:00:00 2001
From: Sverker Eriksson <sverker@erlang.org>
Date: Tue, 30 Jan 2018 21:53:39 +0100
Subject: [PATCH 1/3] erts: Remove low memory demand for hipe amd64 code

---
 erts/emulator/sys/common/erl_mmap.c | 26 --------------------------
 1 file changed, 26 deletions(-)

diff --git a/erts/emulator/sys/common/erl_mmap.c b/erts/emulator/sys/common/erl_mmap.c
index a9c6e72c5f..95e6c6fbd0 100644
--- a/erts/emulator/sys/common/erl_mmap.c
+++ b/erts/emulator/sys/common/erl_mmap.c
@@ -1371,32 +1371,6 @@ os_mmap_virtual(char *ptr, UWord size, int exec)
     int flags = ERTS_MMAP_VIRTUAL_FLAGS;
     void* res;
 
-#ifdef ERTS_ALC_A_EXEC
-    if (exec) {
-        ASSERT(!ptr);
-        /* OTP-19.0: Nice hack below cut-and-pasted from hipe_amd64.c */
-
-#  ifdef MAP_32BIT
-        /* If we got MAP_32BIT (Linux), then use that to ask for low memory */
-        flags |= MAP_32BIT;
-#  else
-        /* FreeBSD doesn't have MAP_32BIT, and it doesn't respect
-           a plain map_hint (returns high mappings even though the
-           hint refers to a free area), so we have to use both map_hint
-           and MAP_FIXED to get addresses below the 2GB boundary.
-           This is even worse than the Linux/ppc64 case.
-           Similarly, Solaris 10 doesn't have MAP_32BIT,
-           and it doesn't respect a plain map_hint. */
-        ptr = (char*)(512*1024*1024); /* 0.5GB */
-
-#    if defined(__FreeBSD__) || defined(__sun__)
-        flags |= MAP_FIXED;
-#    endif
-#  endif /* !MAP_32BIT */
-    }
-#else /* !ERTS_ALC_A_EXEC */
-    ASSERT(!exec);
-#endif
     res = mmap((void *) ptr, (size_t) size, ERTS_MMAP_VIRTUAL_PROT,
                flags, ERTS_MMAP_FD, 0);
     if (res == (void *) MAP_FAILED)
-- 
2.16.2