[Git][ghc/ghc][wip/9.2.7-backports] 2 commits: Hadrian: Enable SMP on powerpc64{le}

Zubin (@wz1000) gitlab at gitlab.haskell.org
Fri Feb 17 11:17:32 UTC 2023



Zubin pushed to branch wip/9.2.7-backports at Glasgow Haskell Compiler / GHC


Commits:
43393af6 by Peter Trommler at 2023-02-17T16:47:22+05:30
Hadrian: Enable SMP on powerpc64{le}

Fixes #19825

(cherry picked from commit 7cfa6f3114168797cf1fa7faa4ffe6c06b73f149)

- - - - -
a567c4d7 by Zubin Duggal at 2023-02-17T16:47:22+05:30
Allow metric changes for 9.2.7 as baseline is from a release pipeline

Metric Decrease:
    haddock.base
    haddock.Cabal
    haddock.compiler
Metric Increase:
    ManyAlternatives
    ManyConstructors
    T10421
    T10858
    T12227
    T12425
    T12707
    T13035
    T13253
    T13719
    T15164
    T16577
    T18304
    T18698a
    T18698b
    T3294
    T5321FD
    T5642
    T9203
    T9233
    T9630
    T9872a
    T9872b
    T9872c
    T9872d
    T14697
    T12545

(cherry picked from commit 67ec973ce40d8a66d48c0f5f40458380957b6e6f)

- - - - -


2 changed files:

- docs/users_guide/9.2.7-notes.rst
- hadrian/src/Oracles/Flag.hs


Changes:

=====================================
docs/users_guide/9.2.7-notes.rst
=====================================
@@ -1,6 +1,6 @@
-.. _release-9-2-6:
+.. _release-9-2-7:
 
-Version 9.2.6
+Version 9.2.7
 ==============
 
 The significant changes to the various parts of the compiler are listed in the
@@ -9,100 +9,29 @@ following sections.
 The :ghc-flag:`LLVM backend <-fllvm>` of this release is to be used with LLVM
 9, 10, 11, or 12.
 
-Compiler
---------
-
-- Fix a regression in the simplifier due to a bad backport in GHC 9.2.5 that
-  could seriously impact runtime performance when compiling with optimisations
-  due to duplication of expensive work (:ghc-ticket:`22425`).
-
-- Fix a compiler panic in the simplifier due to a bad backport in GHC 9.2.5
-  (:ghc-ticket:`22491`).
-
-- Fix a compiler panic in the simplifier that manifests when compiling with
-  optimisations (:ghc-ticket:`19824`,:ghc-ticket:`22482`).
-
-- Fix a compiler panic in the demand analyser due to a bug involving shadowing
-  (:ghc-ticket:`22718`).
-
-- Fix a compiler panic during the "Float In" optimsation pass due to improper
-  handling of shadowing (:ghc-ticket:`22662`).
-
-- Fix a compiler panic in the demand analyser (:ghc-ticket:`22039`).
-
-- Fix a shadowing related bug in the occurence analysis phase of the simplifier
-  (:ghc-ticket:`22623`).
-
-- Fix a compiler bug where programs using Template Haskell involving Constant
-  Applicative forms could be garbage collected too early (:ghc-ticket:`22417`).
-
-- Fix a regression in the typechecker where certain typeclass instances
-  involving type and data familes would fail to resolve (:ghc-ticket:`22647`).
-
-- Fix the linker warning about chained fixups on Darwin platforms for programs
-  compiled with GHC (:ghc-ticket:`22429`).
-
-- Fix a bug with the graph-colouring register allocater leading to compiler
-  panics when compiling with ``-fregs-graph`` (:ghc-ticket:`22798`).
-
-- Fix a parser bug where certain keywords which could be used as variables
-  were not allowed to be used with :extension:`OverloadedRecordDot`
-  (:ghc-ticket:`20723`).
-
-- Fix the location of some ``Typeable`` definitions from ``GHC.Types`` which
-  resulted in poor error messages (:ghc-ticket:`22510`).
-
-- Improve error messages involving non-exhaustive patterns when using
-  :extension:`ApplicativeDo` (:ghc-ticket:`22483`).
-
-- Fix a driver bug where certain non-fatal Safe Haskell related warnings were
-  being marked as fatal (:ghc-ticket:`22728`).
-
-- Fix a core lint error arises from incorrect scoping of type variables in
-  specialise pragmas inside class instances (:ghc-ticket:`22913`).
-
-- Improve typchecker performance for modules with holes in type signatures
-  (:ghc-ticket:`14766`).
-
 Runtime system
 --------------
 
-- Fix a GC bug where a race condition in the parallel GC could cause it to
-  garbage collect live sparks (:ghc-ticket:`22528`).
-
-- Truncate eventlog events with a large payload (:ghc-ticket:`20221`).
+- Fix a bug with the RTS linker being unable to resolve the ``setKeepCAFs``
+  symbol which started being used by the GHC library in 9.2.6, resulting in code
+  depending on this symbol failing to load in GHCi or via a compile time splice
+  when using a statically linked GHC, such as on Windows (:ghc-ticket:`22961`).
 
-- A bug in the nonmoving garbage collector regarding the treatment of
-  zero-length ``SmallArray#``\ s has been fixed (:ghc-ticket:`22264`)
+- Fix a bug with the alignment of RTS data structures that could result in
+  segfaults when compiled with high optimisation settings on certain platforms
+  (:ghc-ticket:`22975` , :ghc-ticket:`22965`).
 
-- A number of bugs regarding the non-moving garbage collector's treatment of
-  ``Weak#`` pointers have been fixed (:ghc-ticket:`22327`)
+- Fix a RTS bug resulting in segfaults while using cost center profiling on code
+  that uses the ``newArrayArray#`` primop (:ghc-ticket:`22129`).
 
-- A few race conditions between the non-moving collector and
-  ``setNumCapabilities`` which could result in undefined behavior have been
-  fixed (:ghc-ticket:`22926`, :ghc-ticket:`22927`)
-
-- The non-moving collector is now able to better schedule marking work during
-  the post-mark synchronization phase of collection, significantly reducing
-  pause times in some workloads (:ghc-ticket:`22929`).
-
-- Various bugs in the non-moving collector's implementation of the selector
-  optimisation have been fixed (:ghc-ticket:`22930`)
+- Use C11 compatible static assertion syntax (:ghc-ticket:`22777`).
 
 Build system and packaging
 --------------------------
 
-- Bump ``gmp-tarballs`` to a version which doesn't use the reserved ``x18``
-  register on AArch64/Darwin systems, and also has fixes for CVE-2021-43618
-  (:ghc-ticket:`22497`, :ghc-ticket:`22789`).
-
-- Include haddock documentation in interface files for hadrian generated
-  bindists, including darwin platforms (:ghc-ticket:`22734`).
-
-Core libraries
---------------
-
-- Bump ``bytestring`` to 0.11.4.0.
+- Include the ``gen_contents_index`` script which generates an index page
+  for GHC and library documentation in binary distributions generated by
+  Hadrian (:ghc-ticket:`22431`).
 
 Included libraries
 ------------------


=====================================
hadrian/src/Oracles/Flag.hs
=====================================
@@ -72,7 +72,16 @@ targetSupportsSMP :: Action Bool
 targetSupportsSMP = do
   unreg <- flag GhcUnregisterised
   armVer <- targetArmVersion
-  goodArch <- anyTargetArch ["i386", "x86_64", "sparc", "powerpc", "arm", "aarch64", "s390x", "riscv64"]
+  goodArch <- anyTargetArch ["i386"
+                            , "x86_64"
+                            , "sparc"
+                            , "powerpc"
+                            , "powerpc64"
+                            , "powerpc64le"
+                            , "arm"
+                            , "aarch64"
+                            , "s390x"
+                            , "riscv64"]
   if   -- The THREADED_RTS requires `BaseReg` to be in a register and the
        -- Unregisterised mode doesn't allow that.
      | unreg                -> return False



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/454b2ff16b592bcc105587464d504b43059d77f2...a567c4d79fa12a79edb9c8efe10c031d6881a062

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/454b2ff16b592bcc105587464d504b43059d77f2...a567c4d79fa12a79edb9c8efe10c031d6881a062
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/20230217/f28621a9/attachment-0001.html>


More information about the ghc-commits mailing list