Magnus pushed to branch ghc-9.12 at Glasgow Haskell Compiler / GHC

Commits:

2 changed files:

Changes:

  • docs/users_guide/9.12.5-notes.rst
    1
    +.. _release-9-12-5:
    
    2
    +
    
    3
    +Version 9.12.5
    
    4
    +==============
    
    5
    +
    
    6
    +The significant changes to the various parts of the compiler are listed in the
    
    7
    +following sections. See the `migration guide
    
    8
    +<https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.12>`_ on the GHC Wiki
    
    9
    +for specific guidance on migrating programs to this release.
    
    10
    +
    
    11
    +Compiler
    
    12
    +~~~~~~~~
    
    13
    +
    
    14
    +This release of GHC supports LLVM versions 13 through 19.
    
    15
    +
    
    16
    +- When there are no remaining argument demands, bottoming applications are now being trimmed to avoid panics (:ghc-ticket:`27261`)
    
    17
    +- Implement version 2 of the ghc ``semaphore`` protocol for GHC's ``-jsem`` jobserver on Linux and other ``POSIX`` platforms (:ghc-ticket:`25087`, :ghc-ticket:`27253`)
    
    18
    +- several improvements to the pattern match checker (:ghc-ticket:`25926`, :ghc-ticket:`27124`)
    
    19
    +- Avoid putting ticks around coercions (:ghc-ticket:`27121`)
    
    20
    +- Let the driver recognise ``.dyn_o`` as valid object files to allow plugins with this suffix to run. (:ghc-ticket:`24486`)
    
    21
    +- Don't move ticks in between a join point and its jumps (:ghc-ticket:`26929`, :ghc-ticket:`26642`, :ghc-ticket:`26693`)
    
    22
    +- Remove ``StgAsyncResult`` to fix crash/leaks (:ghc-ticket:`26341`)
    
    23
    +- ffi: collapse void pointer chains in capi wrappers (:ghc-ticket:`26852`)
    
    24
    +- aarch64: fix ``MOVK reguUsageOfInstr``  to mark dst as both read and written (:ghc-ticket:`26980`)
    
    25
    +- Fix ``dsuppress-uniques`` for free variables in demand signatures (:ghc-ticket:`27106`)
    
    26
    +- demand analysis: take stable unfoldings into account when determining argument demands (:ghc-ticket:`26416`)
    
    27
    +
    
    28
    +Runtime System
    
    29
    +~~~~~~~~~~~~~~
    
    30
    +
    
    31
    +- prevent the WinIO manager from swallowing exceptions in overlapped ``IO`` (:ghc-ticket:`27283`)
    
    32
    +- several fixes for blackholes (:ghc-ticket:`27261`)
    
    33
    +- add ``--optimistic-linking`` flag which binds unknown symbols in the runtime linker to ``0xDEADBEEF`` instead of failing (:ghc-ticket:`25240`)
    
    34
    +- add a few missing i386 relocations in the rts linker
    
    35
    +- handle heap allocation failures in I/O primops (:ghc-ticket:`24105`)
    
    36
    +- small fixes to allow more configurations to succesfully build (debugging RTS with optimizations)
    
    37
    +- fix race conditions between ``flushEventLog`` acquiring/releasing the ``state_change`` mutex
    
    38
    +- align stack to 64-byte boundary in StgRun on x65 (:ghc-ticket:`26595`, ghc-ticket:`26822`)
    
    39
    +- carefully SLIDE off the end of a stack chunk (:ghc-ticket:`27001`)
    
    40
    +- Fix missing profiling header for origin_thunk frame (:ghc-ticket:`27007`)
    
    41
    +
    
    42
    +
    
    43
    +Code Generation
    
    44
    +~~~~~~~~~~~~~~~
    
    45
    +
    
    46
    +- aarch64: use ``ASR`` not ``LSR`` for ``MO_U_Shr`` at ``W8/W16`` (:ghc-ticet:`26979`)
    
    47
    +- fix finalizers on multiple platforms (:ghc-ticket:`27072`)
    
    48
    +
    
    49
    +Bytecode Compiler
    
    50
    +~~~~~~~~~~~~~~~~~
    
    51
    +
    
    52
    +``base`` library
    
    53
    +~~~~~~~~~~~~~~~~
    
    54
    +
    
    55
    +``ghc-internal`` library
    
    56
    +~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    57
    +
    
    58
    +- update to unicode 17.0.0
    
    59
    +
    
    60
    +``ghc-experimental`` library
    
    61
    +~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    62
    +
    
    63
    +
    
    64
    +``ghc-pkg``
    
    65
    +~~~~~~~~~~~~
    
    66
    +
    
    67
    +``ghc-toolchain``
    
    68
    +~~~~~~~~~~~~~~~~~
    
    69
    +
    
    70
    +Packaging and Build System
    
    71
    +~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    72
    +
    
    73
    +- bumped ``process`` submodule to 1.6.29.0
    
    74
    +- bumped ``semaphore-compat`` submodule to 2.0.0
    
    75
    +- accept ``happy`` version 2.2
    
    76
    +- hadrian: don't include package hash in haddock library
    
    77
    +- configure: fix check for ``--target`` support in stage0 ``CC`` (:ghc-ticket:`26999`)
    
    78
    +
    
    79
    +Wasm Backend
    
    80
    +~~~~~~~~~~~~
    
    81
    +
    
    82
    +- ensure post-linker output is synchronous ESM (:ghc-ticket:`27257`)
    
    83
    +
    
    84
    +Included libraries
    
    85
    +~~~~~~~~~~~~~~~~~~
    
    86
    +
    
    87
    +The package database provided with this distribution also contains a number of
    
    88
    +packages other than GHC itself. See the changelogs provided with these packages
    
    89
    +for further change information.
    
    90
    +
    
    91
    +.. ghc-package-list::
    
    92
    +
    
    93
    +    compiler/ghc.cabal:                                  The compiler itself
    
    94
    +    libraries/array/array.cabal:                         Dependency of ``ghc`` library
    
    95
    +    libraries/base/base.cabal:                           Core library
    
    96
    +    libraries/binary/binary.cabal:                       Dependency of ``ghc`` library
    
    97
    +    libraries/bytestring/bytestring.cabal:               Dependency of ``ghc`` library
    
    98
    +    libraries/Cabal/Cabal/Cabal.cabal:                   Dependency of ``ghc-pkg`` utility
    
    99
    +    libraries/Cabal/Cabal-syntax/Cabal-syntax.cabal:     Dependency of ``ghc-pkg`` utility
    
    100
    +    libraries/containers/containers/containers.cabal:    Dependency of ``ghc`` library
    
    101
    +    libraries/deepseq/deepseq.cabal:                     Dependency of ``ghc`` library
    
    102
    +    libraries/directory/directory.cabal:                 Dependency of ``ghc`` library
    
    103
    +    libraries/exceptions/exceptions.cabal:               Dependency of ``ghc`` and ``haskeline`` library
    
    104
    +    libraries/file-io/file-io.cabal:                     Dependency of ``directory`` library
    
    105
    +    libraries/filepath/filepath.cabal:                   Dependency of ``ghc`` library
    
    106
    +    libraries/ghc-boot/ghc-boot.cabal:                   Internal compiler library
    
    107
    +    libraries/ghc-boot-th/ghc-boot-th.cabal:             Internal compiler library
    
    108
    +    libraries/ghc-compact/ghc-compact.cabal:             Core library
    
    109
    +    libraries/ghc-experimental/ghc-experimental.cabal:   Core library
    
    110
    +    libraries/ghc-heap/ghc-heap.cabal:                   GHC heap-walking library
    
    111
    +    libraries/ghci/ghci.cabal:                           The REPL interface
    
    112
    +    libraries/ghc-internal/ghc-internal.cabal:           Core library
    
    113
    +    libraries/ghc-platform/ghc-platform.cabal:           Internal library
    
    114
    +    libraries/ghc-prim/ghc-prim.cabal:                   Core library
    
    115
    +    libraries/haskeline/haskeline.cabal:                 Dependency of ``ghci`` executable
    
    116
    +    libraries/hpc/hpc.cabal:                             Dependency of ``hpc`` executable
    
    117
    +    libraries/integer-gmp/integer-gmp.cabal:             Core library
    
    118
    +    libraries/mtl/mtl.cabal:                             Dependency of ``Cabal`` library
    
    119
    +    libraries/os-string/os-string.cabal:                 Dependency of ``filepath`` library
    
    120
    +    libraries/parsec/parsec.cabal:                       Dependency of ``Cabal`` library
    
    121
    +    libraries/pretty/pretty.cabal:                       Dependency of ``ghc`` library
    
    122
    +    libraries/process/process.cabal:                     Dependency of ``ghc`` library
    
    123
    +    libraries/semaphore-compat/semaphore-compat.cabal:   Dependency of ``ghc`` library
    
    124
    +    libraries/stm/stm.cabal:                             Dependency of ``haskeline`` library
    
    125
    +    libraries/template-haskell/template-haskell.cabal:   Core library
    
    126
    +    libraries/terminfo/terminfo.cabal:                   Dependency of ``haskeline`` library
    
    127
    +    libraries/text/text.cabal:                           Dependency of ``Cabal`` library
    
    128
    +    libraries/time/time.cabal:                           Dependency of ``ghc`` library
    
    129
    +    libraries/transformers/transformers.cabal:           Dependency of ``ghc`` library
    
    130
    +    libraries/unix/unix.cabal:                           Dependency of ``ghc`` library
    
    131
    +    libraries/Win32/Win32.cabal:                         Dependency of ``ghc`` library
    
    132
    +    libraries/xhtml/xhtml.cabal:                         Dependency of ``haddock`` executable
    
    133
    +    utils/haddock/haddock-api/haddock-api.cabal:         Dependency of ``haddock`` executable
    
    134
    +    utils/haddock/haddock-library/haddock-library.cabal: Dependency of ``haddock`` executable

  • docs/users_guide/release-notes.rst
    ... ... @@ -8,3 +8,4 @@ Release notes
    8 8
        9.12.2-notes
    
    9 9
        9.12.3-notes
    
    10 10
        9.12.4-notes
    
    11
    +   9.12.5-notes