[commit: ghc] master: Build system: simplify *-llvm BuildFlavours (#10223) (b40e559)

git at git.haskell.org git at git.haskell.org
Mon Sep 7 09:59:25 UTC 2015


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/b40e55954ecdab650d35349cbb93e53df952310e/ghc

>---------------------------------------------------------------

commit b40e55954ecdab650d35349cbb93e53df952310e
Author: Thomas Miedema <thomasmiedema at gmail.com>
Date:   Tue Aug 25 17:49:32 2015 +0200

    Build system: simplify *-llvm BuildFlavours (#10223)
    
    Note that SRC_HC_OPTS are added to every Haskell compilation. So
    there isn't any need to also add `-fllvm` to GhcStage1HcOpts,
    GhcStage2HcOpts and GhcLibHcOpts.
    
    Small bug fix: make sure we test for -fllvm in SRC_HC_OPTS, to check
    whether the bootstrap compiler is affected by bug #9439.
    
    Reviewed by: austin
    
    Differential Revision: https://phabricator.haskell.org/D1188


>---------------------------------------------------------------

b40e55954ecdab650d35349cbb93e53df952310e
 Makefile                  | 2 +-
 mk/flavours/bench-llvm.mk | 8 ++++----
 mk/flavours/perf-llvm.mk  | 4 ++--
 mk/flavours/quick-llvm.mk | 6 +++---
 4 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/Makefile b/Makefile
index 217205c..38c7eb9 100644
--- a/Makefile
+++ b/Makefile
@@ -71,7 +71,7 @@ include mk/custom-settings.mk
 
 # Verify that stage 0 LLVM backend isn't affected by Bug #9439 if needed
 ifeq "$(GHC_LLVM_AFFECTED_BY_9439)" "1"
-ifneq "$(findstring -fllvm,$(GhcHcOpts) $(GhcStage1HcOpts))" ""
+ifneq "$(findstring -fllvm,$(SRC_HC_OPTS) $(GhcHcOpts) $(GhcStage1HcOpts))" ""
 $(error Stage 0 compiler is affected by Bug #9439. Refusing to bootstrap with -fllvm)
 endif
 endif
diff --git a/mk/flavours/bench-llvm.mk b/mk/flavours/bench-llvm.mk
index 99957b9..816d7c7 100644
--- a/mk/flavours/bench-llvm.mk
+++ b/mk/flavours/bench-llvm.mk
@@ -1,7 +1,7 @@
-SRC_HC_OPTS        = -O -H64m
-GhcStage1HcOpts    = -O -fllvm
-GhcStage2HcOpts    = -O0 -fllvm
-GhcLibHcOpts       = -O2 -fllvm
+SRC_HC_OPTS        = -O -H64m -fllvm
+GhcStage1HcOpts    = -O
+GhcStage2HcOpts    = -O0
+GhcLibHcOpts       = -O2
 BUILD_PROF_LIBS    = NO
 SplitObjs          = NO
 HADDOCK_DOCS       = NO
diff --git a/mk/flavours/perf-llvm.mk b/mk/flavours/perf-llvm.mk
index 581037f..c49849f 100644
--- a/mk/flavours/perf-llvm.mk
+++ b/mk/flavours/perf-llvm.mk
@@ -1,6 +1,6 @@
 SRC_HC_OPTS        = -O -H64m -fllvm
-GhcStage1HcOpts    = -O -fllvm
-GhcStage2HcOpts    = -O2 -fllvm
+GhcStage1HcOpts    = -O
+GhcStage2HcOpts    = -O2
 GhcLibHcOpts       = -O2
 BUILD_PROF_LIBS    = YES
 #SplitObjs
diff --git a/mk/flavours/quick-llvm.mk b/mk/flavours/quick-llvm.mk
index 90ccb7a..e565327 100644
--- a/mk/flavours/quick-llvm.mk
+++ b/mk/flavours/quick-llvm.mk
@@ -1,7 +1,7 @@
 SRC_HC_OPTS        = -O0 -H64m -fllvm
-GhcStage1HcOpts    = -O -fllvm
-GhcStage2HcOpts    = -O0 -fllvm
-GhcLibHcOpts       = -O -fllvm
+GhcStage1HcOpts    = -O
+GhcStage2HcOpts    = -O0
+GhcLibHcOpts       = -O
 BUILD_PROF_LIBS    = NO
 SplitObjs          = NO
 HADDOCK_DOCS       = NO



More information about the ghc-commits mailing list