[Git][ghc/ghc][ghc-8.10] 6 commits: Require SMP support in order to build a threaded stage1

Ben Gamari gitlab at gitlab.haskell.org
Thu Jul 30 13:17:57 UTC 2020



Ben Gamari pushed to branch ghc-8.10 at Glasgow Haskell Compiler / GHC


Commits:
2e4fe920 by Stefan Schulze Frielinghaus at 2020-07-28T12:58:12-04:00
Require SMP support in order to build a threaded stage1

Fixes #18266

(cherry picked from commit fc0f6fbcd95f2dc69a8efabbee2d8a485c34cc47)

- - - - -
4672b93e by Ben Gamari at 2020-07-29T22:59:54-04:00
base: Bump version for log1mexp fix

- - - - -
9aa91006 by Ben Gamari at 2020-07-29T22:59:54-04:00
users-guide: Release notes for 8.10.2

- - - - -
7b82011a by Ben Gamari at 2020-07-29T22:59:54-04:00
Bump Cabal submodule

- - - - -
750c51ba by Ben Gamari at 2020-07-29T22:59:54-04:00
Bump hsc2hs submodule to 0.68.7

- - - - -
dbe09a23 by Ben Gamari at 2020-07-29T22:59:54-04:00
Release GHC 8.10.2

- - - - -


15 changed files:

- configure.ac
- docs/users_guide/8.10.2-notes.rst
- libraries/Cabal
- libraries/base/base.cabal
- libraries/base/changelog.md
- testsuite/tests/dependent/should_compile/T14729.stderr
- testsuite/tests/dependent/should_compile/T15743.stderr
- testsuite/tests/dependent/should_compile/T15743e.stderr
- testsuite/tests/indexed-types/should_compile/T15711.stderr
- testsuite/tests/indexed-types/should_compile/T15852.stderr
- testsuite/tests/polykinds/T15592.stderr
- testsuite/tests/polykinds/T15592b.stderr
- testsuite/tests/typecheck/should_compile/T12763.stderr
- testsuite/tests/typecheck/should_compile/subsumption_sort_hole_fits.stderr
- utils/hsc2hs


Changes:

=====================================
configure.ac
=====================================
@@ -13,10 +13,10 @@ dnl
 # see what flags are available. (Better yet, read the documentation!)
 #
 
-AC_INIT([The Glorious Glasgow Haskell Compilation System], [8.10.1], [glasgow-haskell-bugs at haskell.org], [ghc-AC_PACKAGE_VERSION])
+AC_INIT([The Glorious Glasgow Haskell Compilation System], [8.10.2], [glasgow-haskell-bugs at haskell.org], [ghc-AC_PACKAGE_VERSION])
 
 # Set this to YES for a released version, otherwise NO
-: ${RELEASE=NO}
+: ${RELEASE=YES}
 
 # The primary version (e.g. 7.5, 7.4.1) is set in the AC_INIT line
 # above.  If this is not a released version, then we will append the
@@ -147,13 +147,17 @@ if test "$WithGhc" != ""; then
   BOOTSTRAPPING_GHC_INFO_FIELD([AR_STAGE0],[ar command])
   BOOTSTRAPPING_GHC_INFO_FIELD([AR_OPTS_STAGE0],[ar flags])
   BOOTSTRAPPING_GHC_INFO_FIELD([ArSupportsAtFile_STAGE0],[ar supports at file])
+  BOOTSTRAPPING_GHC_INFO_FIELD([SUPPORT_SMP_STAGE0],[Support SMP])
   BOOTSTRAPPING_GHC_INFO_FIELD([RTS_WAYS_STAGE0],[RTS ways])
 
   dnl Check whether or not the bootstrapping GHC has a threaded RTS. This
   dnl determines whether or not we can have a threaded stage 1.
   dnl See Note [Linking ghc-bin against threaded stage0 RTS] in
   dnl hadrian/src/Settings/Packages.hs for details.
-  if echo ${RTS_WAYS_STAGE0} | grep '.*thr.*' 2>&1 >/dev/null; then
+  dnl SMP support which implies a registerised stage0 is also required (see issue 18266)
+  if echo ${RTS_WAYS_STAGE0} | grep '.*thr.*' 2>&1 >/dev/null && \
+     test "$SUPPORT_SMP_STAGE0" = "YES"
+  then
       AC_SUBST(GhcThreadedRts, YES)
   else
       AC_SUBST(GhcThreadedRts, NO)


=====================================
docs/users_guide/8.10.2-notes.rst
=====================================
@@ -11,13 +11,26 @@ Highlights
 ----------
 
 - A few important correctness fixes for the low-latency garbage collector.
+  Users of :rts-flag:`--nonmoving-gc` are strongly encouraged to upgrade
+  promptly.
 
-Full details
-------------
+- Fixes a bug in process creation on Windows (:ghc-ticket:`17926`).
 
-Language
-~~~~~~~~
+- Works around a Linux kernel bug in the implementation of ``timerfd``\s
+  (:ghc-ticket:`18033`).
+
+- Fixes a few specialiser regressions (:ghc-ticket:`17810`,
+  :ghc-ticket:`18120`) as well introduces a variety of miscellaneous
+  specialiser improvements (:ghc-ticket:`16473`, :ghc-ticket:`17930`,
+  :ghc-ticket:`17966`)
+
+- Fixes a potential loss of sharing due to left operator sections
+  (:ghc-ticket:`18151`).
+
+- Fix bootstrapping of GHC with the LLVM backend on x86-64 (:ghc-ticket:`17920`).
 
+Full details
+------------
 
 Compiler
 ~~~~~~~~
@@ -25,20 +38,16 @@ Compiler
  - A simplifier panic manifesting when DWARF debug information is enabled has
    been fixed (:ghc-ticket:`18162`, :ghc-ticket:`17619`)
 
-GHC API
-~~~~~~~
-
-
-GHCi
-~~~~
-
 
 Runtime system
 ~~~~~~~~~~~~~~
 
-- The RTS now allows the user to specify a minimum time between idle GCs with
-  the :rts-flag:`-Iw ⟨seconds⟩` flag. 8.10.1 contained a users guide reference
-  to this flag but did not include the associated implementation.
+ - The RTS now supports a flag, :rts-flag:`--copying-gc`, to counter-act the
+   effect of :rts-flag:`--nonmoving-gc`.
+
+ - The RTS now allows the user to specify a minimum time between idle GCs with
+   the :rts-flag:`-Iw ⟨seconds⟩` flag. 8.10.1 contained a users guide reference
+   to this flag but did not include the associated implementation.
 
  - A memory leak in the cost-center profiler has been fixed
    (:ghc-ticket:`18348`)
@@ -49,26 +58,40 @@ Runtime system
  - We now workaround a Linux kernel bug in the implementation of timerfd which
    could previously result in program crashes (:ghc-ticket:`18033`)
 
-Template Haskell
-~~~~~~~~~~~~~~~~
-
-
+ - The cost center profiler's JSON output backend now escapes backslashes
+   correctly (:ghc-ticket:`18438`)
 
-``ghc-prim`` library
-~~~~~~~~~~~~~~~~~~~~
+ - A variety of linker issues on ARM platforms have been fixed.
 
 
-
-``ghc`` library
-~~~~~~~~~~~~~~~
-
 ``base`` library
 ~~~~~~~~~~~~~~~~
 
+- Fix a precision issue in the implementation of ``log1mexp``
+  (:ghc-ticket:`17125`)
+
+
 Build system
 ~~~~~~~~~~~~
 
+ - Fix a bug wherein GHC would link against the non-thread-safe unique supply
+   implementation when bootstrapping with an unregisterised compiler
+   (:ghc-ticket:`18024`)
+
+Known issues
+------------
+
+- A long-standing bug (:ghc-ticket:`16893`) which can cause some applications
+  of ``unsafeCoerce`` to segmentation fault is only partially fixed in this
+  release. This release only avoids this issue in the uses of ``unsafeCoerce``
+  in ``Data.Typeable.Internal``, which was the proximate cause of
+  :ghc-ticket:`16893`.
+
+  However, it is possible that this bug could manifest in user-code using
+  ``unsafeCoerce`` to perform dynamic type checks. See the :ghc-ticket:`ticket
+  <16893>` for details.
 
+  We expect that this issue will be fixed in the next major release of GHC.
 
 Included libraries
 ------------------


=====================================
libraries/Cabal
=====================================
@@ -1 +1 @@
-Subproject commit b353baafe080e6aa6d542dd95658487b41e2254b
+Subproject commit df65caf90ff79894dacecf73a642452aaabcc0a5


=====================================
libraries/base/base.cabal
=====================================
@@ -1,6 +1,6 @@
 cabal-version:  3.0
 name:           base
-version:        4.14.0.0
+version:        4.14.1.0
 -- NOTE: Don't forget to update ./changelog.md
 
 license:        BSD-3-Clause


=====================================
libraries/base/changelog.md
=====================================
@@ -1,6 +1,13 @@
 # Changelog for [`base` package](http://hackage.haskell.org/package/base)
 
+## 4.14.1.0* Jul 2020
+
+  * Bundled with GHC 8.10.2
+
+  * Fix a precision issue in `log1mexp` (#17125)
+
 ## 4.14.0.0 *Jan 2020
+
   * Bundled with GHC 8.10.1
 
   * Add a `TestEquality` instance for the `Compose` newtype.


=====================================
testsuite/tests/dependent/should_compile/T14729.stderr
=====================================
@@ -11,5 +11,5 @@ COERCION AXIOMS
 FAMILY INSTANCES
   type instance F Int = Bool -- Defined at T14729.hs:10:15
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/dependent/should_compile/T15743.stderr
=====================================
@@ -3,5 +3,5 @@ TYPE CONSTRUCTORS
     forall {k1} k2 (k3 :: k2). Proxy k3 -> k1 -> k2 -> *
     roles nominal nominal nominal phantom phantom phantom
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/dependent/should_compile/T15743e.stderr
=====================================
@@ -52,5 +52,5 @@ DATA CONSTRUCTORS
                 (d :: Proxy k5) (e :: Proxy k7).
          f c -> T k8 a b f c d e
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/indexed-types/should_compile/T15711.stderr
=====================================
@@ -3,5 +3,5 @@ TYPE CONSTRUCTORS
   associated type family F{2} :: forall a. Maybe a -> *
     roles nominal nominal
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/indexed-types/should_compile/T15852.stderr
=====================================
@@ -9,5 +9,5 @@ FAMILY INSTANCES
   data instance forall k1 k2 (j :: k1) (c :: k2).
                   DF (Proxy c) -- Defined at T15852.hs:10:15
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/polykinds/T15592.stderr
=====================================
@@ -5,5 +5,5 @@ DATA CONSTRUCTORS
   MkT :: forall {k} k1 (f :: k1 -> k -> *) (a :: k1) (b :: k).
          f a b -> T f a b -> T f a b
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/polykinds/T15592b.stderr
=====================================
@@ -4,5 +4,5 @@ TYPE CONSTRUCTORS
     forall k (f :: k -> *) (a :: k). f a -> *
     roles nominal nominal nominal nominal
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/typecheck/should_compile/T12763.stderr
=====================================
@@ -8,5 +8,5 @@ COERCION AXIOMS
 CLASS INSTANCES
   instance C Int -- Defined at T12763.hs:9:10
 Dependent modules: []
-Dependent packages: [base-4.14.0.0, ghc-prim-0.6.1,
-                     integer-gmp-1.0.2.0]
+Dependent packages: [base-4.14.1.0, ghc-prim-0.6.1,
+                     integer-gmp-1.0.3.0]


=====================================
testsuite/tests/typecheck/should_compile/subsumption_sort_hole_fits.stderr
=====================================
@@ -9,10 +9,10 @@ subsumption_sort_hole_fits.hs:2:5: warning: [-Wtyped-holes (in -Wdefault)]
       Valid hole fits include
         lines :: String -> [String]
           (imported from ‘Prelude’ at subsumption_sort_hole_fits.hs:1:1
-           (and originally defined in ‘base-4.14.0.0:Data.OldList’))
+           (and originally defined in ‘base-4.14.1.0:Data.OldList’))
         words :: String -> [String]
           (imported from ‘Prelude’ at subsumption_sort_hole_fits.hs:1:1
-           (and originally defined in ‘base-4.14.0.0:Data.OldList’))
+           (and originally defined in ‘base-4.14.1.0:Data.OldList’))
         read :: forall a. Read a => String -> a
           with read @[String]
           (imported from ‘Prelude’ at subsumption_sort_hole_fits.hs:1:1


=====================================
utils/hsc2hs
=====================================
@@ -1 +1 @@
-Subproject commit ed109c719925e358f68b95970199c4b961de6817
+Subproject commit 24100ea521596922d3edc8370b3d9f7b845ae4cf



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/6471cc6aff80d5deebbdb1bf7b677b31ed2af3d5...dbe09a235cc1cd94215bbf7a43bcad01b253396f

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/6471cc6aff80d5deebbdb1bf7b677b31ed2af3d5...dbe09a235cc1cd94215bbf7a43bcad01b253396f
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20200730/b52cde82/attachment-0001.html>


More information about the ghc-commits mailing list