<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>

<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>


<style>img {
max-width: 100%; height: auto;
}
body {
font-size: 0.875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";'>
<div class="content">

<h3 style="margin-top: 20px; margin-bottom: 10px;">
Matthew Pickering pushed to branch ghc-9.4 at <a href="https://gitlab.haskell.org/ghc/ghc" style="color: #1068bf;">Glasgow Haskell Compiler / GHC</a>
</h3>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/59a296f6f959fe912d19491d9a4dc7476259bd44" style="color: #1068bf;">59a296f6</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:38:30+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>compiler: Ensure that MutVar operations have necessary barriers

Here we add acquire and release barriers in readMutVar# and
writeMutVar#, which are necessary for soundness.

Fixes #22468.

(cherry picked from commit a9834736a90aefdd32cfc15be507e22b57eedc07)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b66638f4ac74c70d2b1d8921a3e40af1e452e643" style="color: #1068bf;">b66638f4</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:40:57+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Bump Win32 submodule to v2.12.0.1

Addresses #20017 for 9.4.4.

(cherry picked from commit 0f63c830abf0778c5b6c073d36dc6377844aa087)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5c75888e23ddb113dc5de872fdfc03619e7f280e" style="color: #1068bf;">5c75888e</a></strong>
<div>
<span> by Sebastian Graf </span> <i> at 2022-12-15T09:48:34+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Do not strictify a DFun's parameter dictionaries (#22549)

... thus fixing #22549.

The details are in the refurbished and no longer dead
`Note [Do not strictify a DFun's parameter dictionaries]`.

There's a regression test in T22549.

(cherry picked from commit 26e71562072f6740d52fcd38298340c287a641b8)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/aa422c7127efd5a9da40a4bd53806942f678a5c2" style="color: #1068bf;">aa422c71</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:32+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>cmm: Introduce blockConcat

(cherry picked from commit da7b51d8598400ed8073afe1b311c73a04e2230d)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/54ad2942efc1373d5be2bdcf82e4fd38d5b3d996" style="color: #1068bf;">54ad2942</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:45+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>cmm: Introduce MemoryOrderings

(cherry picked from commit 34f6b09c8e985017c4b18896aeac0c20baf4433d)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/22e5cfe6c8e8bb0fc94064f6700ae2e91183557a" style="color: #1068bf;">22e5cfe6</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:46+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>llvm: Respect memory specified orderings

(cherry picked from commit 43beaa7baf02d75946c37974fbe46d2857920a53)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/6afffee58d516b7444dd50a493de5cedc03ba4db" style="color: #1068bf;">6afffee5</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:46+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Codegen/x86: Eliminate barrier for relaxed accesses

(cherry picked from commit 8faf74fcbd9d9da81ce8a901d694711c5d7ad406)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/61798773cc3ebde27de2da4ce7e9ec50f76f8470" style="color: #1068bf;">61798773</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:46+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>cmm/Parser: Reduce some repetition

(cherry picked from commit 6cc3944a06cc5be302bb023a43c0537838b50861)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3208e037b5723a7d52c2054cb563abfc1a8aa373" style="color: #1068bf;">3208e037</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:46+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>cmm/Parser: Add syntax for ordered loads and stores

(cherry picked from commit 6c9862c4fee395345dbbcd8ad58ae3f08753219e)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/32497a141fd1415c166451730bb5adc7b16882b3" style="color: #1068bf;">32497a14</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:50:46+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>cmm/Parser: Atomic load syntax

Originally I had thought I would just use the `prim` call syntax instead
of introducing new syntax for atomic loads. However, it turns out that
`prim` call syntax tends to make things quite unreadable. This new
syntax seems quite natural.

(cherry picked from commit 748490d2ff51d6c6fa44aad587908b271c801fa9)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bb4d238b675e5138d1a6ea46552528136e4142d8" style="color: #1068bf;">bb4d238b</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2022-12-15T09:52:43+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>rts: Ensure that global regs are never passed as fun call args

This is in general unsafe as they may be clobbered if they are mapped to
caller-saved machine registers. See Note [Register parameter passing].

(cherry picked from commit 9372329008143104b0ae5e8e792e957090dfa743)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f9ce32c802451d3e60e942f534d6e15fef0fb10f" style="color: #1068bf;">f9ce32c8</a></strong>
<div>
<span> by Sebastian Graf </span> <i> at 2022-12-15T10:07:46+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>DmdAnal: Reflect the `seq` of strict fields of a DataCon worker (#22475)

See the updated `Note [Data-con worker strictness]`
and the new `Note [Demand transformer for data constructors]`.

Fixes #22475.

(cherry picked from commit b4cfa8e235715d8c73b2ba0ba05ed8ef92629218)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/c701cb6ef968b79c8ce318729d5b72c03a07415e" style="color: #1068bf;">c701cb6e</a></strong>
<div>
<span> by Sebastian Graf </span> <i> at 2022-12-15T11:04:35+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>DmdAnal: Don't panic in addCaseBndrDmd (#22039)

Rather conservatively return Top.
See Note [Untyped demand on case-alternative binders].

I also factored `addCaseBndrDmd` into two separate functions `scrutSubDmd` and
`fieldBndrDmds`.

Fixes #22039.

(cherry picked from commit d2be80fd9b222963e8dd09a30f78c106e00da7f9)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/723fe2e6da305249dbe09c8a09a25b372e8cdd6b" style="color: #1068bf;">723fe2e6</a></strong>
<div>
<span> by Matthew Pickering </span> <i> at 2022-12-15T11:18:08+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Bump version to 9.4.4
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f6aee84621a2d91649258a29078921c80828fafe" style="color: #1068bf;">f6aee846</a></strong>
<div>
<span> by Matthew Pickering </span> <i> at 2022-12-15T11:35:01+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Add 9.4.4 release notes
</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
30 changed files:
</h4>
<ul>
<li class="file-stats">
<a href="#359dccbd5e329f4f4f3c88b6d43f0ad5dd435fe3" style="color: #1068bf;">
compiler/GHC/Cmm/ContFlowOpt.hs
</a>
</li>
<li class="file-stats">
<a href="#eae45922f6e633780395508f44c14a5ed7959e7a" style="color: #1068bf;">
compiler/GHC/Cmm/Dataflow/Block.hs
</a>
</li>
<li class="file-stats">
<a href="#e9c044b79842eca94ef683d075c4bfeca3bbb931" style="color: #1068bf;">
compiler/GHC/Cmm/Lexer.x
</a>
</li>
<li class="file-stats">
<a href="#c898e00d01234ab22d3b485be68db3645f52f220" style="color: #1068bf;">
compiler/GHC/Cmm/MachOp.hs
</a>
</li>
<li class="file-stats">
<a href="#71e696f452eb493722d70306c6f304fc9b2f6a95" style="color: #1068bf;">
compiler/GHC/Cmm/Parser.y
</a>
</li>
<li class="file-stats">
<a href="#6997a0cd37829d3d08db1c48185aaa3d7dfc3e6b" style="color: #1068bf;">
compiler/GHC/CmmToAsm/AArch64/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#f71fa75baa7807186473f09c45a9ada1b72f4c6c" style="color: #1068bf;">
compiler/GHC/CmmToAsm/PPC/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#2bae5947e9412f6deebf4db7dcb89d780913130f" style="color: #1068bf;">
compiler/GHC/CmmToAsm/X86/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#76664ab267df4fc0bec2465efd78bf0afacfe3a7" style="color: #1068bf;">
compiler/GHC/CmmToC.hs
</a>
</li>
<li class="file-stats">
<a href="#a49dbda5c8a9c380f638f55cf5ade791db0017cc" style="color: #1068bf;">
compiler/GHC/CmmToLlvm/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#6fcf64907fb5bdd93082d2d1eb94e4566e735865" style="color: #1068bf;">
compiler/GHC/Core/DataCon.hs
</a>
</li>
<li class="file-stats">
<a href="#8104fa1b71db6cfc4eb90cd769463d9eb9004619" style="color: #1068bf;">
compiler/GHC/Core/Opt/DmdAnal.hs
</a>
</li>
<li class="file-stats">
<a href="#a5d27de4e3111a69f69902c65ecf7b3379f7c49a" style="color: #1068bf;">
compiler/GHC/CoreToStg/Prep.hs
</a>
</li>
<li class="file-stats">
<a href="#657eec52eed3c8be846a0b60eb6088d5f465de8a" style="color: #1068bf;">
compiler/GHC/Stg/Lift/Analysis.hs
</a>
</li>
<li class="file-stats">
<a href="#a20603a23b2146fbb7d5890b4d50d8c7eab4a54e" style="color: #1068bf;">
compiler/GHC/StgToCmm/ExtCode.hs
</a>
</li>
<li class="file-stats">
<a href="#d12a108e34fe83acc9c99357ae841e22a0af0a23" style="color: #1068bf;">
compiler/GHC/StgToCmm/Prim.hs
</a>
</li>
<li class="file-stats">
<a href="#d09e98aae6ad2eb59d08eac7894b68c0ab820cda" style="color: #1068bf;">
compiler/GHC/Types/Demand.hs
</a>
</li>
<li class="file-stats">
<a href="#261c0c5029eb34eb7436b087d77314f377ff8223" style="color: #1068bf;">
compiler/GHC/Types/Id/Make.hs
</a>
</li>
<li class="file-stats">
<a href="#87db583be5c13c1f7b3c958b10e03d67b6a2ca06" style="color: #1068bf;">
configure.ac
</a>
</li>
<li class="file-stats">
<a href="#fbcfe5ff9a59907946894e12832b26f71c415cb7" style="color: #1068bf;">
<span class="new-file">
+
docs/users_guide/9.4.4-notes.rst
</span>
</a>
</li>
<li class="file-stats">
<a href="#96a304b83d0bf4600831c1a4fbfe7fd74edeee69" style="color: #1068bf;">
docs/users_guide/release-notes.rst
</a>
</li>
<li class="file-stats">
<a href="#d9d403ef33037a25def03681f243bb9be1dbf4ae" style="color: #1068bf;">
libraries/Win32
</a>
</li>
<li class="file-stats">
<a href="#c295ca8b90dc6b200fb3e0cbd3dfdc5df307bbc7" style="color: #1068bf;">
rts/HeapStackCheck.cmm
</a>
</li>
<li class="file-stats">
<a href="#42b1e3e63c0a49d4dbd34cbf1d98a5cdd2ad833c" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/stranal/should_compile/T22039.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#ab93c58ebef7f2d807198123cbe82575c40b90f1" style="color: #1068bf;">
testsuite/tests/stranal/should_compile/all.T
</a>
</li>
<li class="file-stats">
<a href="#6bd9a408f2065316e18fd3a065bbf22bb138afda" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/stranal/should_run/T22475.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#54e12808cf96fb60cdbfcc780ee240a18074f122" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/stranal/should_run/T22475b.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#5fe34848f88cda46c48d3c609b9d754bfdabcf85" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/stranal/should_run/T22475b.stdout
</span>
</a>
</li>
<li class="file-stats">
<a href="#2ae97e484c35b23b5fa08906c03195be76ddbcd8" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/stranal/should_run/T22549.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#651635d4075ed54469c820c8464d721a08952ff7" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/stranal/should_run/T22549.stdout
</span>
</a>
</li>
</ul>
<h5 style="margin-top: 10px; margin-bottom: 10px; font-size: 0.875rem;">
The diff was not included because it is too large.
</h5>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #666;">

<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/5e9ac6946d7082502fe05546d32429e2f3aca9b6...f6aee84621a2d91649258a29078921c80828fafe" style="color: #1068bf;">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.haskell.org" style="color: #1068bf;">gitlab.haskell.org</a>. <a href="https://gitlab.haskell.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link" style="color: #1068bf;">Manage all notifications</a> · <a href="https://gitlab.haskell.org/help" target="_blank" rel="noopener noreferrer" class="help-link" style="color: #1068bf;">Help</a>



</p>
</div>
</body>
</html>