summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorklebinger.andreas@gmx.at <klebinger.andreas@gmx.at>2019-01-24 20:20:39 +0100
committerBen Gamari <ben@smart-cactus.org>2019-01-31 12:46:51 -0500
commit92c7e70ff3135b79485be2d36cfac3d2441c29df (patch)
tree2782daf45a76ebce0d63d8aa52228d17d77ad7e6
parent0593e9389c4e5fd4386ebd74a746ef9659401ac6 (diff)
downloadhaskell-92c7e70ff3135b79485be2d36cfac3d2441c29df.tar.gz
Use O2 on stage1 for faster overall build times with make.
Build times when using the quick flavour: stage1 opt | time (wall) | time (user) -O1 | 13m | 53m -O2 | 13m | 51m So even when we compile stage2 with -O0 (quick) using -O2 on stage1 is already faster. The difference is even bigger when freezing stage1 and doing multiple builds or compiling stage2 with optimizations.
-rw-r--r--mk/flavours/bench-cross-ncg.mk2
-rw-r--r--mk/flavours/bench.mk2
-rw-r--r--mk/flavours/devel2.mk2
-rw-r--r--mk/flavours/perf.mk2
-rw-r--r--mk/flavours/prof.mk2
-rw-r--r--mk/flavours/quick-cross-ncg.mk2
-rw-r--r--mk/flavours/quick.mk2
-rw-r--r--mk/flavours/quickest.mk2
-rw-r--r--mk/flavours/validate.mk2
9 files changed, 9 insertions, 9 deletions
diff --git a/mk/flavours/bench-cross-ncg.mk b/mk/flavours/bench-cross-ncg.mk
index 6b686af5c4..0d42938c24 100644
--- a/mk/flavours/bench-cross-ncg.mk
+++ b/mk/flavours/bench-cross-ncg.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O0
GhcLibHcOpts = -O2
BUILD_PROF_LIBS = NO
diff --git a/mk/flavours/bench.mk b/mk/flavours/bench.mk
index 0a7cf80fbd..73015aaf44 100644
--- a/mk/flavours/bench.mk
+++ b/mk/flavours/bench.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O0
GhcLibHcOpts = -O2
BUILD_PROF_LIBS = NO
diff --git a/mk/flavours/devel2.mk b/mk/flavours/devel2.mk
index 34808a3c9b..dc8be47578 100644
--- a/mk/flavours/devel2.mk
+++ b/mk/flavours/devel2.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O0 -DDEBUG
GhcLibHcOpts = -O -dcore-lint
BUILD_PROF_LIBS = NO
diff --git a/mk/flavours/perf.mk b/mk/flavours/perf.mk
index 06fcc246da..ec314bd589 100644
--- a/mk/flavours/perf.mk
+++ b/mk/flavours/perf.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O2
GhcLibHcOpts = -O2
BUILD_PROF_LIBS = YES
diff --git a/mk/flavours/prof.mk b/mk/flavours/prof.mk
index 67f89e61af..c7e0e2863f 100644
--- a/mk/flavours/prof.mk
+++ b/mk/flavours/prof.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O0 -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O
GhcLibHcOpts = -O
BUILD_PROF_LIBS = YES
diff --git a/mk/flavours/quick-cross-ncg.mk b/mk/flavours/quick-cross-ncg.mk
index 97352ccd3e..5ca88c0208 100644
--- a/mk/flavours/quick-cross-ncg.mk
+++ b/mk/flavours/quick-cross-ncg.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O0 -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O0
GhcLibHcOpts = -O
BUILD_PROF_LIBS = NO
diff --git a/mk/flavours/quick.mk b/mk/flavours/quick.mk
index 735de6a71d..30322cd691 100644
--- a/mk/flavours/quick.mk
+++ b/mk/flavours/quick.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O0 -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O0
GhcLibHcOpts = -O
BUILD_PROF_LIBS = NO
diff --git a/mk/flavours/quickest.mk b/mk/flavours/quickest.mk
index 61e091c54b..5204acb20f 100644
--- a/mk/flavours/quickest.mk
+++ b/mk/flavours/quickest.mk
@@ -1,5 +1,5 @@
SRC_HC_OPTS = -O0 -H64m
-GhcStage1HcOpts = -O
+GhcStage1HcOpts = -O2
GhcStage2HcOpts = -O0
GhcLibHcOpts = -O0
BUILD_PROF_LIBS = NO
diff --git a/mk/flavours/validate.mk b/mk/flavours/validate.mk
index 2ff7c20e2d..a1470cd610 100644
--- a/mk/flavours/validate.mk
+++ b/mk/flavours/validate.mk
@@ -1,6 +1,6 @@
SRC_HC_OPTS = -O0 -H64m
SRC_HC_OPTS_STAGE1 = -fllvm-fill-undef-with-garbage # See Trac 11487
-GhcStage1HcOpts = -O -DDEBUG
+GhcStage1HcOpts = -O2 -DDEBUG
GhcStage2HcOpts = -O -dcore-lint -dno-debug-output
GhcLibHcOpts = -O -dcore-lint -dno-debug-output
BUILD_PROF_LIBS = NO