diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2022-05-06 15:17:11 +0100 |
---|---|---|
committer | Matthew Pickering <matthewtpickering@gmail.com> | 2023-01-04 11:58:42 +0000 |
commit | be9dd9b03479070ba6387c251541f4569392c4bb (patch) | |
tree | 86b70060a88554f3dc89e7aa10f0238532c28d4b /hadrian | |
parent | 32e264c1a11e6356bb045371b87a3736df19e792 (diff) | |
download | haskell-be9dd9b03479070ba6387c251541f4569392c4bb.tar.gz |
packaging: Build perf builds with -split-sectionswip/various-hadrian-fixes
In 8f71d958 the make build system was made to use split-sections on
linux systems but it appears this logic never made it to hadrian.
There is the split_sections flavour transformer but this doesn't appear
to be used for perf builds on linux.
This is disbled on deb9 and windows due to #21670
Closes #21135
Diffstat (limited to 'hadrian')
-rw-r--r-- | hadrian/doc/flavours.md | 13 | ||||
-rw-r--r-- | hadrian/src/Settings/Flavours/Performance.hs | 2 |
2 files changed, 14 insertions, 1 deletions
diff --git a/hadrian/doc/flavours.md b/hadrian/doc/flavours.md index af94fde32f..1b052266b4 100644 --- a/hadrian/doc/flavours.md +++ b/hadrian/doc/flavours.md @@ -15,6 +15,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH <table> <tr> <th rowspan="3">Flavour</th> + <th rowspan="3">Split Sections</th> <th colspan="8">Extra arguments</th> </tr> <tr> @@ -35,6 +36,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>default<br></td> + <td> </td> <td>-O<br>-H32m<br></td> <td>-O2<br>-H32m</td> <td></td> @@ -46,6 +48,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>quick</td> + <td> </td> <td>-O0<br>-H64m</td> <td>-O0<br>-H64m</td> <td></td> @@ -57,6 +60,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>quick-validate</td> + <td></td> <td>-O0<br>-H64m<br>-Werror</td> <td>-O0<br>-H64m<br>-Werror</td> <td></td> @@ -68,6 +72,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>quick-debug</td> + <td></td> <td>-O0<br>-H64m</td> <td>-O0<br>-H64m</td> <td></td> @@ -79,6 +84,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>quickest</td> + <td></td> <td>-O0<br>-H64m</td> <td>-O0<br>-H64m</td> <td></td> @@ -90,6 +96,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>perf</td> + <td> Yes (on supported platforms) </td> <td>-O<br>-H64m</td> <td>-O<br>-H64m</td> <td></td> @@ -112,6 +119,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>bench</td> + <td></td> <td>-O<br>-H64m</td> <td>-O<br>-H64m</td> <td></td> @@ -123,6 +131,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>devel1</td> + <td></td> <td>-O<br>-H64m</td> <td>-O<br>-H64m</td> <td></td> @@ -134,6 +143,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>devel2</td> + <td></td> <td>-O<br>-H64m</td> <td>-O<br>-H64m</td> <td></td> @@ -145,6 +155,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>validate</td> + <td></td> <td>-O0<br>-H64m</td> <td>-fllvm-fill-undef-with-garbage</td> <td></td> @@ -156,6 +167,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>slow-validate</td> + <td></td> <td>-O0<br>-H64m</td> <td>-fllvm-fill-undef-with-garbage</td> <td></td> @@ -167,6 +179,7 @@ when compiling the `compiler` library, and `hsGhc` when compiling/linking the GH </tr> <tr> <th>static</td> + <td></td> <td>-O<br>-H64m<br>-fPIC -static</td> <td>-O<br>-H64m<br>-fPIC -static</td> <td></td> diff --git a/hadrian/src/Settings/Flavours/Performance.hs b/hadrian/src/Settings/Flavours/Performance.hs index 21de3c72fe..a856bc9d17 100644 --- a/hadrian/src/Settings/Flavours/Performance.hs +++ b/hadrian/src/Settings/Flavours/Performance.hs @@ -6,7 +6,7 @@ import {-# SOURCE #-} Settings.Default -- Please update doc/flavours.md when changing this file. performanceFlavour :: Flavour -performanceFlavour = defaultFlavour +performanceFlavour = splitSections $ defaultFlavour { name = "perf" , args = defaultBuilderArgs <> performanceArgs <> defaultPackageArgs } |