summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update haddock submodule to revert quickjump breakagewip/21984Matthew Pickering2022-08-161-0/+0
| | | | Fixes #21984
* base: Add changelog entries from ghc-9.2Ben Gamari2022-08-151-0/+15
| | | | Closes #21922.
* driver: Don't create LinkNodes when -no-link is enabledMatthew Pickering2022-08-159-15/+20
| | | | | | Fixes #21866 (cherry picked from commit ef30e21594e44af309c627052f63aea6fd575c9e)
* relnotes: Fix typoBen Gamari2022-08-151-1/+1
|
* hadrian: Don't attempt to install documentation if doc/ doesn't existBen Gamari2022-08-151-4/+6
| | | | | | | | | | | Previously we would attempt to install documentation even if the `doc` directory doesn't exist (e.g. due to `--docs=none`). This would result in the surprising side-effect of the entire contents of the bindist being installed in the destination documentation directory. Fix this. Fixes #21976. (cherry picked from commit 7cabea7c9b10d2d15a4798be9f3130994393dd9c)
* hadrian RunRest: add type signature for stageNumberJens Petersen2022-08-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | avoids warning seen on 9.4.1: src/Settings/Builders/RunTest.hs:264:53: warning: [-Wtype-defaults] • Defaulting the following constraints to type ‘Integer’ (Show a0) arising from a use of ‘show’ at src/Settings/Builders/RunTest.hs:264:53-84 (Num a0) arising from a use of ‘stageNumber’ at src/Settings/Builders/RunTest.hs:264:59-83 • In the second argument of ‘(++)’, namely ‘show (stageNumber (C.stage ctx))’ In the second argument of ‘($)’, namely ‘"config.stage=" ++ show (stageNumber (C.stage ctx))’ In the expression: arg $ "config.stage=" ++ show (stageNumber (C.stage ctx)) | 264 | , arg "-e", arg $ "config.stage=" ++ show (stageNumber (C.stage ctx)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ compilation tested locally (cherry picked from commit 823fe5b56450a7eefbf41ce8ece34095bf2217ee)
* base: Fix races in IOManager (setNumCapabilities,closeFdWith)Douglas Wilson2022-08-152-20/+75
| | | | | | | | | | | | | | | Fix for #21651 Fixes three bugs: - writes to eventManager should be atomic. It is accessed concurrently by ioManagerCapabilitiesChanged and closeFdWith. - The race in closeFdWith described in the ticket. - A race in getSystemEventManager where it accesses the 'IOArray' in 'eventManager' before 'ioManagerCapabilitiesChanged' has written to 'eventManager', causing an Array Index exception. The fix here is to 'yield' and retry. (cherry picked from commit 7589ee7241d46b393979d98d4ded17a15ee974fb)
* testsuite: 21651 add test for closeFdWith + setNumCapabilitiesDouglas Wilson2022-08-153-1/+135
| | | | | | | This bug does not affect windows, which does not use the base module GHC.Event.Thread. (cherry picked from commit 76b52cf0c52ee05c20f7d1b80f5600eecab3c42a)
* gitlab-ci: Bump to use freebsd13 runnersBen Gamari2022-08-153-39/+40
| | | | (cherry picked from commit ea90e61dc3c6ba0433e008284dc6c3970ead98a7)
* system-cxx-std-lib: Add support for FreeBSD libcxxrtBen Gamari2022-08-151-20/+55
| | | | (cherry picked from commit 5d66a0ce39f47b7b9f6c732a18ac6e102a21ee6b)
* rts/linker: Resolve iconv_* on FreeBSDBen Gamari2022-08-151-9/+50
| | | | | | | | | | | | | FreeBSD's libiconv includes an implementation of the iconv_* functions in libc. Unfortunately these can only be resolved using dlvsym, which is how the RTS linker usually resolves such functions. To fix this we include an ad-hoc special case for iconv_*. Fixes #20354. (cherry picked from commit 844df61e8de5e2d9a058e6cbe388802755fc0305) (cherry picked from commit d8961a2dc974b7f8f8752781c4aec261ae8f8c0f)
* hadrian: Fix access mode of installed package registration filesBen Gamari2022-08-151-0/+2
| | | | | | | | | | Previously hadrian's bindist Makefile would modify package registrations placed by `install` via a shell pipeline and `mv`. However, the use of `mv` means that if umask is set then the user may otherwise end up with package registrations which are inaccessible. Fix this by ensuring that the mode is 0644. (cherry picked from commit 681aa076259c05c626266cf516de7e7c5524eadb)
* hadrian: Fix bindist installation on DarwinBen Gamari2022-08-153-40/+39
| | | | | | | | | It turns out that `cp -P` on Darwin does not always copy a symlink as a symlink. In order to get these semantics one must pass `-RP`. It's not entirely clear whether this is valid under POSIX, but it is nevertheless what Apple does. (cherry picked from commit 1c582f44e41f534a8506a76618f6cffe5d71ed42)
* gitlab-ci: Don't use coreutils on DarwinBen Gamari2022-08-151-1/+0
| | | | | | | | | | | In general we want to ensure that the tested environment is as similar as possible to the environment the user will use. In the case of Darwin, this means we want to use the system's BSD command-line utilities, not coreutils. This would have caught #21974. (cherry picked from commit c1c08bd829fb33a185f0a71f08babe5d7e6556fc)
* ncg/aarch64: Don't use x18 register on AArch64/Darwinnormalcoder2022-08-151-0/+8
| | | | | | | | | | | Apple's ABI documentation [1] says: "The platforms reserve register x18. Don’t use this register." While this wasn't problematic in previous Darwin releases, macOS 13 appears to start zeroing this register periodically. See #21964. [1] https://developer.apple.com/documentation/xcode/writing-arm64-code-for-apple-platforms (cherry picked from commit 67575f2004340564d6e52af055ed6fb43d3f9711)
* make: Add another missing build dependency on template-haskellBen Gamari2022-08-151-0/+2
| | | | | | This time the culprit is Data.Sequence.Internal. Closes #22047.
* make: Fix bootstrapping with profiling enabledBen Gamari2022-08-121-0/+5
| | | | | | | | | | 12ae2a9cf89af3ae9e4df051818b631cf213a1b8 attempted to work around a make build system deficiency by adding some dependencies from modules of `containers` which contain TH splices to the `template-haskell` package. However, it only did this for the vanilla way. Here we add similar edges for profiled objects. Fixes #21987.
* relnotes: Reintroduce "included libraries" sectionBen Gamari2022-08-121-0/+47
| | | | As requested in #21988.
* users-guide: Fix incorrect directivesBen Gamari2022-08-121-2/+2
|
* users-guide: Fix typo in release notesBen Gamari2022-08-121-1/+1
|
* configure: Set RELEASE=NOBen Gamari2022-08-071-1/+1
|
* Bump haddock submoduleghc-9.4.1-releaseBen Gamari2022-08-061-0/+0
|
* hadrian: Extend xattr Darwin hack to cover /libBen Gamari2022-08-061-0/+3
| | | | | | | | | As noted in #21506, it is now necessary to remove extended attributes from `/lib` as well as `/bin` to avoid SIP issues on Darwin. Fixes #21506. (cherry picked from commit a30ef212790e41ba01f92f24e3be4d645502d9ee)
* hadrian: Fix installation of system-cxx-std-lib package confBen Gamari2022-08-061-1/+1
| | | | (cherry picked from commit 119ee22dd09d8977de67939de7324af941ae7196)
* hadrian: Fix binary distribution install attributesBen Gamari2022-08-062-37/+61
| | | | | | | | | | | Previously we would use plain `cp` to install various parts of the binary distribution. However, `cp`'s behavior w.r.t. file attributes is quite unclear; for this reason it is much better to rather use `install`. Fixes #21965. (cherry picked from commit 4d8e0fd3fe3d648c6d37b3eb43b89e1bdbef36af)
* make: Fix too-old bootstrap compiler errorBen Gamari2022-08-061-1/+1
|
* users-guide: Mention representation change of Word64 and Int64Ben Gamari2022-08-062-1/+6
| | | | Closes #21641.
* codeGen/X86: Don't clobber switch variable in switch generationBen Gamari2022-08-051-2/+3
| | | | | | | | | | | Previously ce8745952f99174ad9d3bdc7697fd086b47cdfb5 assumed that it was safe to clobber the switch variable when generating code for a jump table since we were at the end of a block. However, this assumption is wrong; the register could be live in the jump target. Fixes #21968. (cherry picked from commit b4342e32823bb0bfc8e83b53055647d64e0431ab)
* gitlab-ci: Bump Docker imagesBen Gamari2022-08-051-1/+1
| | | | To give the ARMv7 job access to lld, fixing #21875.
* Bump binary submodule to 0.8.9.1Ben Gamari2022-08-041-0/+0
|
* Bump stm submodule to 2.5.1.0Ben Gamari2022-08-041-0/+0
|
* Accept performance shiftsBen Gamari2022-08-040-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Metric Decrease: T18923 Metric Increase: ManyAlternatives ManyConstructors MultiComponentModules MultiComponentModulesRecomp T10421 T12234 T12425 T12707 T13035 T13056 T13379 T13719 T14697 T15703 T16875 T18698a T1969 T3294 T4801 T4978 T5321FD T5321Fun T7257 T783 T9020 T9198 T9233 T9961 WWRec
* make: Add directory dependency on hs-boot copying rulesMatthew Pickering2022-08-041-2/+2
| | | | | | | We need to create these directories before attempting the copy, apparently this race could be observed in systems under high load. Fixes #21934
* libraries: template-haskell: vendor filepath differentlyDouglas Wilson2022-08-045-1/+2249
| | | | Vendoring with ../ in hs-source-dirs prevents upload to hackage.
* users-guide: Document system-cxx-std-libBen Gamari2022-08-042-0/+28
|
* users-guide: Clean up release notesBen Gamari2022-08-041-33/+74
| | | | Moving breaking changes into their own section, as suggested in #21630.
* ghc-9.4.1: RELEASE=YESDouglas Wilson2022-08-041-2/+2
|
* ghc-9.4: update llvm-targetsDouglas Wilson2022-08-041-34/+34
| | | | | | | | | | These updates were generated with: clang version 13.0.1 Target: x86_64-unknown-linux-gnu Thread model: posix Windows targets are omitted because the script errored with: clang-13: error: unsupported option '-fPIC' for target 'x86_64-unknown-windows-msvc'
* Update submodule nofib to upstream masterDouglas Wilson2022-08-041-0/+0
|
* ghc-9.4: make build system: add container module dependencies on ↵wip/9.4-finalise2Douglas Wilson2022-08-031-0/+9
| | | | template-haskell
* Fix haddock_*_perf tests on non-GNU-grep systemswip/dougwilson/make-containers-problemGreg Steuck2022-08-031-4/+4
| | | | | | | Using regexp pattern requires `egrep` and straight up `+`. The haddock_parser_perf and haddock_renamer_perf tests now pass on OpenBSD. They previously incorrectly parsed the files and awk complained about invalid syntax.
* ghc-9.4: make build system: Detect too-new boot compiler and docsDouglas Wilson2022-08-033-0/+31
|
* ghc-9.4: make buildsystem: build stage0 cabal with older processMatthew Pickering2022-08-031-0/+14
| | | | | | | | | | | Cabal has grown a bound process >= 1.6.14.0 to work around a bug in process. Making process a stage0 package proved difficult, so instead we carefully build stage0 cabal --exact-configuration including boot package-db's process. This is very ugly, but is only necessary on the 9.4 branch as the make build system will not be supported in the future.
* Update submodule haddock to commit 7484cf8Douglas Wilson2022-08-031-0/+0
|
* Update submodule containers to 0.6.6Douglas Wilson2022-08-033-2/+3
|
* Update submodule process to 1.6.15.0Douglas Wilson2022-08-031-0/+0
|
* Store interfaces in ModIfaceCache more directlyMatthew Pickering2022-08-025-80/+61
| | | | | | | | | | I realised hydration was completely irrelavant for this cache because the ModDetails are pruned from the result. So now it simplifies things a lot to just store the ModIface and Linkable, which we can put into the cache straight away rather than wait for the final version of a HomeModInfo to appear. (cherry picked from commit 30a3a1de9eb4ad3a5697f99c4933f9f7386c598b)
* Update submodule Cabal to tag Cabal-v3.8.1.0Douglas Wilson2022-07-284-3/+3
|
* hadrian: also include boot-generated files only needed for makesternenseemann2022-07-281-0/+40
| | | | | | | | | | | | | | | | For some libraries the `boot` script generates a `ghc.mk` and `GNUmakefile` which is required for the make build system. We also should include these files in the source-dist to save make users from having to run the `./boot.source` script in the tarball (which confusingly has a different name to previous GHC releases, thanks to hadrian). With this change, the source-dist should be on parity with GHC 9.2.2 and earlier releases again after the regression in GHC 9.2.3. Closes #21626. (cherry picked from commit 90ccdb9c84fe7133244d661766f1aa7a29a94a72)
* Fix since annotations in GHC.Stack.CloneStackMatthew Pickering2022-07-281-5/+5
| | | | | | Fixes #21894 (cherry picked from commit abd62256ea2fb78990ee83464abc7e2a291a7731)