<!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;">
Marge Bot pushed to branch wip/marge_bot_batch_merge_job
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/9c4ea90c6b493eee6df1798c63a6031cc18ae6da" style="color: #1068bf;">9c4ea90c</a></strong>
<div>
<span>by Cheng Shao</span>
<i>at 2022-09-08T17:49:47-04: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;'>CmmToC: enable 64-bit CallishMachOp on 32-bit targets
Normally, the unregisterised builds avoid generating 64-bit
CallishMachOp in StgToCmm, so CmmToC doesn't support these. However,
there do exist cases where we'd like to invoke cmmToC for other cmm
inputs which may contain such CallishMachOps, and it's a rather low
effort to add support for these since they only require calling into
existing ghc-prim cbits.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/04062510806e2a3ccf0ecdb71c704a8e1c548c53" style="color: #1068bf;">04062510</a></strong>
<div>
<span>by Alexis King</span>
<i>at 2022-09-11T11:30:32+02: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 native delimited continuations to the RTS
This patch implements GHC proposal 313, "Delimited continuation
primops", by adding native support for delimited continuations to the
GHC RTS.
All things considered, the patch is relatively small. It almost
exclusively consists of changes to the RTS; the compiler itself is
essentially unaffected. The primops come with fairly extensive Haddock
documentation, and an overview of the implementation strategy is given
in the Notes in rts/Continuation.c.
This first stab at the implementation prioritizes simplicity over
performance. Most notably, every continuation is always stored as a
single, contiguous chunk of stack. If one of these chunks is
particularly large, it can result in poor performance, as the current
implementation does not attempt to cleverly squeeze a subset of the
stack frames into the existing stack: it must fit all at once. If this
proves to be a performance issue in practice, a cleverer strategy would
be a worthwhile target for future improvements.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/9e599f1b215cbf3a4c43a0cdee2e308330a759c8" style="color: #1068bf;">9e599f1b</a></strong>
<div>
<span>by Cheng Shao</span>
<i>at 2022-09-12T04:06:48-04: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: fix missing dirty_MVAR argument in stg_writeIOPortzh
</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#0887cf39c5cdf9cf8d6758f410d7dab3023c0d77" style="color: #1068bf;">
compiler/GHC/Builtin/Names.hs
</a>
</li>
<li class="file-stats">
<a href="#8a5cd068459120cddf3814e7b9e02003b87647ba" style="color: #1068bf;">
compiler/GHC/Builtin/Types/Prim.hs
</a>
</li>
<li class="file-stats">
<a href="#451725cc4e5d443a3b7c2adcdf224840f953b7e2" style="color: #1068bf;">
compiler/GHC/Builtin/primops.txt.pp
</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="#76664ab267df4fc0bec2465efd78bf0afacfe3a7" style="color: #1068bf;">
compiler/GHC/CmmToC.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="#093cf1ab10ea2bac043566f4a5e4a1c4a1eaf5e6" style="color: #1068bf;">
docs/users_guide/9.6.1-notes.rst
</a>
</li>
<li class="file-stats">
<a href="#3275bac7c0b3d347ea83210728b2edcf3fdd5816" style="color: #1068bf;">
libraries/base/Control/Exception/Base.hs
</a>
</li>
<li class="file-stats">
<a href="#48a6c03232a2b3f836daeff09b3c6e3790804632" style="color: #1068bf;">
libraries/base/GHC/Exts.hs
</a>
</li>
<li class="file-stats">
<a href="#8d32d739fb09a31d87dc934186376661b2ad6ce1" style="color: #1068bf;">
libraries/ghc-heap/GHC/Exts/Heap/ClosureTypes.hs
</a>
</li>
<li class="file-stats">
<a href="#222897f80e4b93ab6ae99cd5c005163922e31f3a" style="color: #1068bf;">
libraries/ghc-prim/GHC/Prim/PtrEq.hs
</a>
</li>
<li class="file-stats">
<a href="#c6ca7d2b8bb94ab0a0ee349206e12a4a65925cec" style="color: #1068bf;">
rts/Apply.cmm
</a>
</li>
<li class="file-stats">
<a href="#1abe69e8818afb163d5b20cb4b3c9916df756fd9" style="color: #1068bf;">
rts/ClosureFlags.c
</a>
</li>
<li class="file-stats">
<a href="#ce9098046da55699677b61bda4c9cfdaca139ab9" style="color: #1068bf;">
rts/ClosureSize.c
</a>
</li>
<li class="file-stats">
<a href="#850b7a6f6f95faed03d3f83b3039ec0a562dfe86" style="color: #1068bf;">
rts/Compact.cmm
</a>
</li>
<li class="file-stats">
<a href="#9551b9e75c644c29779b50c911cc705fe3abb362" style="color: #1068bf;">
<span class="new-file">
+
rts/Continuation.c
</span>
</a>
</li>
<li class="file-stats">
<a href="#a4fd4cf998d52371a526e909fc02b7feb15a0124" style="color: #1068bf;">
<span class="new-file">
+
rts/Continuation.h
</span>
</a>
</li>
<li class="file-stats">
<a href="#8ac1fe18e9e8a39e3164b5fe0c209deb89d3c7ff" style="color: #1068bf;">
<span class="new-file">
+
rts/ContinuationOps.cmm
</span>
</a>
</li>
<li class="file-stats">
<a href="#deed6a3bec2843fc56bafbd3ae930f535197b3a6" style="color: #1068bf;">
rts/Exception.cmm
</a>
</li>
<li class="file-stats">
<a href="#7cd911ebab0f9f45be4a3d53fd5b4cb6cf96de6b" style="color: #1068bf;">
rts/Heap.c
</a>
</li>
<li class="file-stats">
<a href="#c295ca8b90dc6b200fb3e0cbd3dfdc5df307bbc7" style="color: #1068bf;">
rts/HeapStackCheck.cmm
</a>
</li>
<li class="file-stats">
<a href="#5a39775081ff65f8a7080366bd2ebea7bf2097b1" style="color: #1068bf;">
rts/LdvProfile.c
</a>
</li>
<li class="file-stats">
<a href="#6db965f97cbab901f493506a385bcf1283009921" style="color: #1068bf;">
rts/PrimOps.cmm
</a>
</li>
<li class="file-stats">
<a href="#1f366bc5cc9fea123d6a6ab6c25b1483994867d5" style="color: #1068bf;">
rts/Printer.c
</a>
</li>
<li class="file-stats">
<a href="#49d63c99feec397a2d9c3692f6d9f1c7698c81d0" style="color: #1068bf;">
rts/ProfHeap.c
</a>
</li>
<li class="file-stats">
<a href="#f704201810bbaf922015f683d87a6da6978e325a" style="color: #1068bf;">
rts/RetainerProfile.c
</a>
</li>
<li class="file-stats">
<a href="#16c842a51a135c8ef2c7c7f94336544868348a3c" style="color: #1068bf;">
rts/RtsSymbols.c
</a>
</li>
<li class="file-stats">
<a href="#6ca006a5d6dfdfdb97d0dd72db322e3f6eaa6214" style="color: #1068bf;">
rts/StgMiscClosures.cmm
</a>
</li>
<li class="file-stats">
<a href="#19d24fcbecb583c03fb5bcbb9eed98c81bdd6184" style="color: #1068bf;">
rts/Ticky.c
</a>
</li>
<li class="file-stats">
<a href="#bc180b2947a591ed637c69fdae89b63d91cdf3bf" style="color: #1068bf;">
rts/TraverseHeap.c
</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/b131308ec561514941b31ec311f3d73dfc5a4148...9e599f1b215cbf3a4c43a0cdee2e308330a759c8" 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>