summaryrefslogtreecommitdiff
path: root/src/Settings/Flavours/Performance.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Settings/Flavours/Performance.hs')
-rw-r--r--src/Settings/Flavours/Performance.hs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Settings/Flavours/Performance.hs b/src/Settings/Flavours/Performance.hs
new file mode 100644
index 0000000000..64ab4bce9d
--- /dev/null
+++ b/src/Settings/Flavours/Performance.hs
@@ -0,0 +1,18 @@
+module Settings.Flavours.Performance (performanceFlavour) where
+
+import Expression
+import Flavour
+import {-# SOURCE #-} Settings.Default
+
+-- Please update doc/flavours.md when changing this file.
+performanceFlavour :: Flavour
+performanceFlavour = defaultFlavour
+ { name = "perf"
+ , args = defaultBuilderArgs <> performanceArgs <> defaultPackageArgs }
+
+performanceArgs :: Args
+performanceArgs = sourceArgs SourceArgs
+ { hsDefault = pure ["-O", "-H64m"]
+ , hsLibrary = notStage0 ? arg "-O2"
+ , hsCompiler = mconcat [stage0 ? arg "-O", notStage0 ? arg "-O2"]
+ , hsGhc = mconcat [stage0 ? arg "-O", notStage0 ? arg "-O2"] }