Set -O2 via NoFibHcOpts instead of individual Makefiles.
authorklebinger.andreas@gmx.at <klebinger.andreas@gmx.at>
Sat, 16 Jun 2018 16:37:41 +0000 (12:37 -0400)
committerBen Gamari <ben@smart-cactus.org>
Sat, 16 Jun 2018 16:38:38 +0000 (12:38 -0400)
We set -O2 in NoFibHcOpts which is then applied to all benchmarks run.

Adding -O2 in individual benchmarks is therefore redundant.
It also leads to issues when testing performance flags via
EXTRA_HC_OPTS.
Individual Makefiles attach -O2 last. This means all
flags set by -O2 could not be disabled with -fno-<flag> as they
were reenabled by the later -O2 switch.

Test Plan: Using

Reviewers: bgamari, jmct, O26 nofib

Differential Revision: https://phabricator.haskell.org/D4829

real/eff/S/Makefile
shootout/binary-trees/Makefile
shootout/fannkuch-redux/Makefile
shootout/fasta/Makefile
shootout/k-nucleotide/Makefile
shootout/n-body/Makefile
shootout/pidigits/Makefile
shootout/reverse-complement/Makefile
shootout/spectral-norm/Makefile
smp/threads005/Main.hs
smp/threads006/Main.hs

index dd62b77..50c3e71 100644 (file)
@@ -1,7 +1,7 @@
 TOP = ../../..
 include $(TOP)/mk/boilerplate.mk
 
-SRC_HC_OPTS += -fglasgow-exts -package transformers -package mtl -O2
+SRC_HC_OPTS += -fglasgow-exts -package transformers -package mtl
 
 include $(TOP)/mk/target.mk
 
index 8a27f6d..6d944e8 100644 (file)
@@ -8,5 +8,5 @@ SLOW_OPTS = 20  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -XBangPatterns -O2 -funbox-strict-fields
+HC_OPTS += -XBangPatterns -funbox-strict-fields
 SRC_RUNTEST_OPTS += +RTS -K128M -H -RTS
index facb262..729955f 100644 (file)
@@ -8,4 +8,5 @@ SLOW_OPTS = 12  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -XBangPatterns -O2
+HC_OPTS += -XBangPatterns
+
index 97a8b17..e61f95c 100644 (file)
@@ -13,7 +13,7 @@ SLOW_OPTS = 25000000  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -O2 -XBangPatterns -XOverloadedStrings -package bytestring
+HC_OPTS += -XBangPatterns -XOverloadedStrings -package bytestring
 
 #------------------------------------------------------------------
 # Create output to validate against
index a37cbad..8e1e714 100644 (file)
@@ -9,7 +9,7 @@ SLOW_OPTS = 25000000  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -O2 -XBangPatterns -package bytestring
+HC_OPTS += -XBangPatterns -package bytestring
 
 #------------------------------------------------------------------
 # Create input
index 1ea0b09..2290826 100644 (file)
@@ -8,4 +8,4 @@ SLOW_OPTS = 50000000  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -O2 -XBangPatterns -fexcess-precision
+HC_OPTS += -XBangPatterns -fexcess-precision
index fa2edca..fb3fc93 100644 (file)
@@ -8,4 +8,3 @@ SLOW_OPTS = 10000  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -O2
index c165f2f..0b51e16 100644 (file)
@@ -13,7 +13,7 @@ SLOW_OPTS = 25000000  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -O2 -XBangPatterns -funfolding-use-threshold=32 -XMagicHash \
+HC_OPTS += -XBangPatterns -funfolding-use-threshold=32 -XMagicHash \
        -XUnboxedTuples
 
 #------------------------------------------------------------------
index fd5dbfb..a0728d9 100644 (file)
@@ -8,4 +8,4 @@ SLOW_OPTS = 5500  # official shootout setting
 
 # The benchmark game also uses -fllvm, which we can't since it might
 # not be available on the developer's machine.
-HC_OPTS += -XBangPatterns -XMagicHash -O2 -fexcess-precision
+HC_OPTS += -XBangPatterns -XMagicHash -fexcess-precision
index 970b3e1..24bb719 100644 (file)
@@ -1,5 +1,3 @@
-{-# OPTIONS_GHC -O2 #-}
-
 -- Program from GHC ticket #1589, to test scaling of the RTS with many threads.
 
 {-
index 565213c..c92e312 100644 (file)
@@ -1,4 +1,3 @@
-{-# OPTIONS_GHC -O2 #-}
 import System.IO
 import System.Environment
 import System.CPUTime