summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSylvain Henry <sylvain@haskus.fr>2020-10-02 11:33:53 +0200
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-10-09 08:46:22 -0400
commite691a5a04692beb601d480ccf9f283199a70ed62 (patch)
tree908470d2977047a1b0ce727baa4b90f396966544
parentef65b1546ad01fdd10386f713fc246d49269a196 (diff)
downloadhaskell-e691a5a04692beb601d480ccf9f283199a70ed62.tar.gz
Hadrian: add quick-debug flavour
-rw-r--r--hadrian/doc/flavours.md28
-rwxr-xr-xhadrian/src/Settings.hs3
-rw-r--r--hadrian/src/Settings/Flavours/Quick.hs7
3 files changed, 34 insertions, 4 deletions
diff --git a/hadrian/doc/flavours.md b/hadrian/doc/flavours.md
index 61af4f4075..de7e515154 100644
--- a/hadrian/doc/flavours.md
+++ b/hadrian/doc/flavours.md
@@ -35,8 +35,8 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH
</tr>
<tr>
<th>default<br></td>
- <td>-O<br>-H64m<br></td>
- <td>-O2<br>-H64m</td>
+ <td>-O<br>-H32m<br></td>
+ <td>-O2<br>-H32m</td>
<td></td>
<td>-haddock</td>
<td></td>
@@ -56,6 +56,28 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH
<td></td>
</tr>
<tr>
+ <th>quick-validate</td>
+ <td>-O0<br>-H64m<br>-Werror</td>
+ <td>-O0<br>-H64m<br>-Werror</td>
+ <td></td>
+ <td>-O</td>
+ <td>-O2</td>
+ <td>-O</td>
+ <td>-O</td>
+ <td></td>
+ </tr>
+ <tr>
+ <th>quick-debug</td>
+ <td>-O0<br>-H64m</td>
+ <td>-O0<br>-H64m</td>
+ <td></td>
+ <td>-O</td>
+ <td>-O2</td>
+ <td>-O</td>
+ <td>-O</td>
+ <td>-debug (link)</td>
+ </tr>
+ <tr>
<th>quickest</td>
<td>-O0<br>-H64m</td>
<td>-O0<br>-H64m</td>
@@ -190,7 +212,7 @@ information. The following table lists ways that are built in different flavours
<td>Only in<br>prof<br>flavour</td>
</tr>
<tr>
- <th>quick<br>quick-llvm</th>
+ <th>quick<br>quick-llvm<br>quick-validate<br>quick-debug</th>
<td>vanilla</td>
<td>vanilla<br>dynamic</td>
<td>logging<br>debug<br>threaded<br>threadedDebug<br>threadedLogging
diff --git a/hadrian/src/Settings.hs b/hadrian/src/Settings.hs
index 30f65bb4f1..bf4919312b 100755
--- a/hadrian/src/Settings.hs
+++ b/hadrian/src/Settings.hs
@@ -54,7 +54,8 @@ hadrianFlavours :: [Flavour]
hadrianFlavours =
[ benchmarkFlavour, defaultFlavour, developmentFlavour Stage1
, developmentFlavour Stage2, performanceFlavour, profiledFlavour
- , quickFlavour, quickValidateFlavour, quickestFlavour
+ , quickFlavour, quickValidateFlavour, quickDebugFlavour
+ , quickestFlavour
, quickCrossFlavour, benchmarkLlvmFlavour
, performanceLlvmFlavour, profiledLlvmFlavour, quickLlvmFlavour
, ghcInGhciFlavour, validateFlavour, slowValidateFlavour ]
diff --git a/hadrian/src/Settings/Flavours/Quick.hs b/hadrian/src/Settings/Flavours/Quick.hs
index 4146d66586..253202261b 100644
--- a/hadrian/src/Settings/Flavours/Quick.hs
+++ b/hadrian/src/Settings/Flavours/Quick.hs
@@ -1,6 +1,7 @@
module Settings.Flavours.Quick
( quickFlavour
, quickValidateFlavour
+ , quickDebugFlavour
)
where
@@ -39,3 +40,9 @@ quickValidateFlavour :: Flavour
quickValidateFlavour = werror $ quickFlavour
{ name = "quick-validate"
}
+
+quickDebugFlavour :: Flavour
+quickDebugFlavour = quickFlavour
+ { name = "quick-debug"
+ , ghcDebugged = True
+ }