diff options
author | Iavor S. Diatchki <iavor.diatchki@gmail.com> | 2012-01-24 19:40:06 -0800 |
---|---|---|
committer | Iavor S. Diatchki <iavor.diatchki@gmail.com> | 2012-01-24 19:40:06 -0800 |
commit | 9c1575228173218a3cfa06ddbec3865b12d87713 (patch) | |
tree | 52777ff46612b9b0d5135f7d79deb72ae8c1cabe /mk | |
parent | d0e3776f8e4d954160437db27465f1af3c2aea36 (diff) | |
parent | f438722414782adfb9800b574ec8a1d7d5eafbbf (diff) | |
download | haskell-9c1575228173218a3cfa06ddbec3865b12d87713.tar.gz |
Merge remote-tracking branch 'origin/master' into type-nats
Conflicts:
compiler/typecheck/TcEvidence.lhs
Diffstat (limited to 'mk')
-rw-r--r-- | mk/build.mk.sample | 27 | ||||
-rw-r--r-- | mk/validate-settings.mk | 3 |
2 files changed, 29 insertions, 1 deletions
diff --git a/mk/build.mk.sample b/mk/build.mk.sample index 10ab7afc76..e979f3990e 100644 --- a/mk/build.mk.sample +++ b/mk/build.mk.sample @@ -10,6 +10,9 @@ # Full build with max optimisation and everything enabled (very slow build) #BuildFlavour = perf +# As above but build GHC using the LLVM backend +#BuildFlavour = perf-llvm + # Fast build with optimised libraries, no profiling (RECOMMENDED): #BuildFlavour = quick @@ -51,6 +54,23 @@ endif endif +# ---------------- Perf build using LLVM ------------------------------------- + +ifeq "$(BuildFlavour)" "perf-llvm" + +SRC_HC_OPTS = -O -H64m -fllvm +GhcStage1HcOpts = -O -fllvm +GhcStage2HcOpts = -O2 -fllvm +GhcHcOpts = -Rghc-timing +GhcLibHcOpts = -O2 +GhcLibWays += p + +ifeq "$(PlatformSupportsSharedLibs)" "YES" +GhcLibWays += dyn +endif + +endif + # -------- A Fast build ------------------------------------------------------ ifeq "$(BuildFlavour)" "quickest" @@ -151,10 +171,14 @@ endif ifeq "$(BuildFlavour)" "unreg" +# Note that the LLVM backend works in unregisterised mode as well as +# registerised mode. This often makes it a good choice for porting +# GHC. + GhcUnregisterised = YES GhcWithNativeCodeGen = NO -SRC_HC_OPTS = -O -H64m +SRC_HC_OPTS = -O -H64m # -fllvm GhcStage1HcOpts = -O GhcStage2HcOpts = -O2 GhcHcOpts = -Rghc-timing @@ -173,3 +197,4 @@ endif # NoFib settings NoFibWays = STRIP_CMD = : + diff --git a/mk/validate-settings.mk b/mk/validate-settings.mk index 688cd02a80..303b6ec018 100644 --- a/mk/validate-settings.mk +++ b/mk/validate-settings.mk @@ -66,6 +66,9 @@ libraries/Cabal/Cabal_dist-install_EXTRA_HC_OPTS += -w # Temporarily turn off incomplete-pattern warnings for containers libraries/containers_dist-install_EXTRA_HC_OPTS += -fno-warn-incomplete-patterns +# Temporarily turn off pointless-pragma warnings for containers +libraries/containers_dist-install_EXTRA_HC_OPTS += -fno-warn-pointless-pragmas + # bytestring has identities at the moment libraries/bytestring_dist-install_EXTRA_HC_OPTS += -fno-warn-identities |