ld.lld goes out of memory

Ronald Klop ronald-lists at klop.ws
Sat Nov 24 19:48:52 UTC 2018


Hello,

While compiling databases/mongodb34 on my RPI3B+ 12.0-RC1/arm64 ld.lld  
fails often because of 'out of swap' or other issues about memory  
shortage. Is this something others experience on "low memory" machines?

The patch below helped me to continue.
Where to go from here? :-)

Regards,
Ronald.


[root at rpi3 /data/src/12]# svnlite diff contrib
Index: contrib/llvm/tools/lld/Common/Threads.cpp
===================================================================
--- contrib/llvm/tools/lld/Common/Threads.cpp   (revision 340904)
+++ contrib/llvm/tools/lld/Common/Threads.cpp   (working copy)
@@ -9,4 +9,4 @@

  #include "lld/Common/Threads.h"

-bool lld::ThreadsEnabled = true;
+bool lld::ThreadsEnabled = false;
Index: contrib/llvm/tools/lld/ELF/Driver.cpp
===================================================================
--- contrib/llvm/tools/lld/ELF/Driver.cpp       (revision 340904)
+++ contrib/llvm/tools/lld/ELF/Driver.cpp       (working copy)
@@ -659,7 +659,7 @@
        parseCachePruningPolicy(Args.getLastArgValue(OPT_thinlto_cache_policy)),
        "--thinlto-cache-policy: invalid cache policy");
    Config->ThinLTOJobs = args::getInteger(Args, OPT_thinlto_jobs, -1u);
-  ThreadsEnabled = Args.hasFlag(OPT_threads, OPT_no_threads, true);
+  ThreadsEnabled = Args.hasFlag(OPT_threads, OPT_no_threads, false);
    Config->Trace = Args.hasArg(OPT_trace);
    Config->Undefined = args::getStrings(Args, OPT_undefined);
    Config->UnresolvedSymbols = getUnresolvedSymbolPolicy(Args);


More information about the freebsd-arm mailing list