[commit: ghc] master: split-obj: disable split-objects on Windows. (5364994)
git at git.haskell.org
git at git.haskell.org
Tue Jul 17 00:47:54 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/53649947223f197cf93e26393486f578d56c46c6/ghc
>---------------------------------------------------------------
commit 53649947223f197cf93e26393486f578d56c46c6
Author: Tamar Christina <tamar at zhox.com>
Date: Mon Jul 16 20:04:04 2018 -0400
split-obj: disable split-objects on Windows.
A change has caused GHC to generate excessive specializations.
This is making GHC generate 1800 splits for a simple GHC.Prim module,
which means 1800 fork/exec calls.
Due to this compilation times on Windows with split-objs on take over
24 hours to complete depending on your disk speed. Also the end
compiler
compiling medium to large project is also much slower.
So I think we need to just disable split-objects. As there's nothing
that
can be done about this.
Test Plan: ./validate
Reviewers: bgamari
Subscribers: tdammers, rwbarton, thomie, erikd, carter
GHC Trac Issues: #15051
Differential Revision: https://phabricator.haskell.org/D4915
>---------------------------------------------------------------
53649947223f197cf93e26393486f578d56c46c6
configure.ac | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/configure.ac b/configure.ac
index ac464b6..2b05535 100644
--- a/configure.ac
+++ b/configure.ac
@@ -710,6 +710,12 @@ cygwin32|mingw32)
else
AC_PATH_PROG([PerlCmd],[perl])
fi
+ # because of Trac #15051 SplitObjs is useless on Windows. It regresses
+ # build times to days for a build, and this effect is also there for end users
+ # of GHC. So unfortunately we have to disable it, even without having
+ # split-sections. Though the compile time hit for split-sections should be
+ # tiny compared to this so maybe we should enable it for x86_64.
+ SplitObjsBroken=YES
;;
*)
AC_PATH_PROG([PerlCmd],[perl])
More information about the ghc-commits
mailing list