<!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>img {
max-width: 100%; height: auto;
}
</style>
</head>
<body>
<div class="content">
<h3>
Moritz Angermann pushed to branch wip/angerman/sized
at <a href="https://gitlab.haskell.org/ghc/ghc">Glasgow Haskell Compiler / GHC</a>
</h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/4ce2f7d6e6a516173750b1d740f345e90992ffce">4ce2f7d6</a></strong>
<div>
<span>by GHC GitLab CI</span>
<i>at 2020-11-02T23:45:06-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Add --top flag to driver
This allows us to make `config.top` a proper Path. Previously it was a
str, which caused the Ghostscript detection logic to break.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0b7722219ffdb109c3a8b034a8e112d18e6e4336">0b772221</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-11-02T23:45:42-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Document that ccall convention doesn't support varargs
We do not support foreign "C" imports of varargs functions. While this
works on amd64, in general the platform's calling convention may need
more type information that our Cmm representation can currently provide.
For instance, this is the case with Darwin's AArch64 calling convention.
Document this fact in the users guide and fix T5423 which makes use of a
disallowed foreign import.
Closes #18854.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/81006a06736c7300626f9d692a118b493b585cd5">81006a06</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2020-11-02T23:46:19-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">RtsAPI: pause and resume the RTS
The `rts_pause` and `rts_resume` functions have been added to `RtsAPI.h` and
allow an external process to completely pause and resume the RTS.
Co-authored-by: Sven Tennie <sven.tennie@gmail.com>
Co-authored-by: Matthew Pickering <matthewtpickering@gmail.com>
Co-authored-by: Ben Gamari <bgamari.foss@gmail.com>
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bfb1e272950169c17963adaf423890e47b908f4d">bfb1e272</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2020-11-02T23:46:55-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Display results of GHC.Core.Lint.lint* functions consistently
Previously, the functions in `GHC.Core.Lint` used a patchwork of
different ways to display Core Lint errors:
* `lintPassResult` (which is the source of most Core Lint errors) renders
Core Lint errors with a distinctive banner (e.g.,
`*** Core Lint errors : in result of ... ***`) that sets them apart
from ordinary GHC error messages.
* `lintAxioms`, in contrast, uses a completely different code path that
displays Core Lint errors in a rather confusing manner. For example,
the program in #18770 would give these results:
```
Bug.hs:1:1: error:
Bug.hs:12:1: warning:
Non-*-like kind when *-like expected: RuntimeRep
when checking the body of forall: 'TupleRep '[r]
In the coercion axiom Bug.N:T :: []. Bug.T ~_R Any
Substitution: [TCvSubst
In scope: InScope {r}
Type env: [axl :-> r]
Co env: []]
|
1 | {-# LANGUAGE DataKinds #-}
| ^
```
* Further digging reveals that `GHC.IfaceToCore` displays Core Lint
errors for iface unfoldings as though they were a GHC panic. See, for
example, this excerpt from #17723:
```
ghc: panic! (the 'impossible' happened)
(GHC version 8.8.2 for x86_64-unknown-linux):
Iface Lint failure
In interface for Lib
...
```
This patch makes all of these code paths display Core Lint errors and
warnings consistently. I decided to adopt the conventions that
`lintPassResult` currently uses, as they appear to have been around the
longest (and look the best, in my subjective opinion). We now use the
`displayLintResult` function for all three scenarios mentioned above.
For example, here is what the Core Lint error for the program in #18770 looks
like after this patch:
```
[1 of 1] Compiling Bug ( Bug.hs, Bug.o )
*** Core Lint errors : in result of TcGblEnv axioms ***
Bug.hs:12:1: warning:
Non-*-like kind when *-like expected: RuntimeRep
when checking the body of forall: 'TupleRep '[r_axn]
In the coercion axiom N:T :: []. T ~_R Any
Substitution: [TCvSubst
In scope: InScope {r_axn}
Type env: [axn :-> r_axn]
Co env: []]
*** Offending Program ***
axiom N:T :: T = Any -- Defined at Bug.hs:12:1
*** End of Offense ***
<no location info>: error:
Compilation had errors
```
Fixes #18770.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a9e5f52c571ae3dfd4826e10a256d1a265f7e058">a9e5f52c</a></strong>
<div>
<span>by Simon Peyton Jones</span>
<i>at 2020-11-02T23:47:31-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Expand type synonyms with :kind!
The User's Guide claims that `:kind!` should expand type synonyms,
but GHCi wasn't doing this in practice. Let's just update the implementation
to match the specification in the User's Guide.
Fixes #13795. Fixes #18828.
Co-authored-by: Ryan Scott <ryan.gl.scott@gmail.com>
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1370eda7a53f5dfc88afe705b2ffecb1d5544ec7">1370eda7</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-11-02T23:48:06-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">hadrian: Don't capture RunTest output
There are a few reasons why capturing the output of the RunTest builder
is undesirable:
* there is a large amount of output which then gets unnecessarily
duplicated by Hadrian if the builder fails
* the output may contain codepoints which are unrepresentable in the
current codepage on Windows, causing Hadrian to crash
* capturing the output causes the testsuite driver to disable
its colorisation logic, making the output less legible.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2adffe1bd766d0683618ac992f89d35e588c87f2">2adffe1b</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Ints] I8/I16/I32 with unpacked ints now.
(cherry picked from commit acb5ce792806bc3c1e1730c6bdae853d2755de16)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1b368955a2aad1e14097368237a698eba9ced64e">1b368955</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Int] unpacked ints, part 2
(cherry picked from commit 872b3b35e269eaea771d0f98a9bce6ce9ff8f084)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3c4fffc107fa0a27a459b69aa3ab7fc48e79c2f5">3c4fffc1</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Int] unpacked ints, part 3
(cherry picked from commit 39b8861cf728ffeeb1d1f4abff073b8e4956d853)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/02c3b43905c99488197f239acd630364dfd0f43d">02c3b439</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Int] T8832 fix test stdout.
(cherry picked from commit a6e59c84ace4a4f3cb1aa95ffaec3bb5b675d66a)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/6a3be476ecd7c39470b800d877137994ff8c743e">6a3be476</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Int] fix haddock
(cherry picked from commit 5764bca329c18619598fbe99433f581a119a5898)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f47e4c1f449a78491a2af9b2ad86377782ed1449">f47e4c1f</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Int] move Int32# section.
(cherry picked from commit beba345453f368b7f76bf55161fe10f26b9b2110)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/af751f6c496fff594f96e92010f2c638d88e3415">af751f6c</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Word] W8/W16/W32
(cherry picked from commit 8aef9557ae8a2a446090af4124d22d1d27a4a10d)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1fecf13f41f433ccd901485ad07dabd0d4d710af">1fecf13f</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSize Word] pt 2
(cherry picked from commit 88764dd4d4cf744a02bde4c91c0ee1e510b88298)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/59c6f380442a75a2cb54d6584113705227ad151f">59c6f380</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSize Word] pt 3
(cherry picked from commit dade52f58bc677040146362d8e49d7a42b82ae83)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0a76fb47d84c2041879a9d01a3723459f6a88fe6">0a76fb47</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Word] Constant Fold
(cherry picked from commit fe9a02930e2596660fd1bdb7c9dbd63d43085e05)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/70ef6c9230614292fdfdd1eb2ea515eaa6711e3e">70ef6c92</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Word] Fix testsuite
(cherry picked from commit a0903f8eb626fa3444bcc880ac515d1fb6e52140)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e51b9f831ada4940a672d2e1fe9b601db1eacaf9">e51b9f83</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized Word] More constant folds
(cherry picked from commit 13a7028bd83f33b0647cd924830f3ad228e9ee24)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/78d575e001e76853fd9aef4c15b421155e9078ea">78d575e0</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[SizedCmm Word] Trying to fix TH Quotes
(cherry picked from commit e98e3d124a92cdf48108d918e501a132eaaee53a)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/7590b715d01e9c9554301d34b342e186132b0bc3">7590b715</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix superfluous import
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0f9e1936fd784aac56e10539e6472020e2021d9e">0f9e1936</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[CmmSized] bump submodules
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ed4b2e64a2c18115b171af00937df32de402dc9e">ed4b2e64</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix T8832
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/582628965bae8b25065f47eda541f4165b362d4b">58262896</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">CodeToByteCode: Fix handling of narrow datacon fields
Handle the non-word-size cases specifically and emit the appropriate
bytecode instructions.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/cbadeb8d2dfb38c9f78134dfb4aea4d2d6eb4385">cbadeb8d</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Constant folding for extend/narrow
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/235464b1d6e5c7afa146988c5089a6dd5fe25fee">235464b1</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">StgToCmm: Normalize padding
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0d45991bfe31dff103f9d44d655cbd64458a1c21">0d45991b</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump submodules
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3332dc2625d8a0c3a2e74064a7d13c9f57b8678a">3332dc26</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:23:05+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make Libdw.c -Werror safe
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/dfecf8f7553b02736bee8ad638e07d0be5dc9d01">dfecf8f7</a></strong>
<div>
<span>by Moritz Angermann</span>
<i>at 2020-11-03T08:38:42+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">bump text
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#0887cf39c5cdf9cf8d6758f410d7dab3023c0d77">
compiler/GHC/Builtin/Names.hs
</a>
</li>
<li class="file-stats">
<a href="#377cfd14c1f92357465df995ec6537b074051322">
compiler/GHC/Builtin/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#451725cc4e5d443a3b7c2adcdf224840f953b7e2">
compiler/GHC/Builtin/primops.txt.pp
</a>
</li>
<li class="file-stats">
<a href="#2f6f8d6d05acc04b08fff94df4b3996c65b87892">
compiler/GHC/ByteCode/Asm.hs
</a>
</li>
<li class="file-stats">
<a href="#1684e8db5c0d415248dabe224ffe70205adc6b0f">
compiler/GHC/CmmToAsm/Ppr.hs
</a>
</li>
<li class="file-stats">
<a href="#182d6a315e784018aa9c8b2ad736036b97bd5d48">
compiler/GHC/Core.hs
</a>
</li>
<li class="file-stats">
<a href="#36a42448a83a9d1f6df8475f03ead2eed199dd8e">
compiler/GHC/Core/Lint.hs
</a>
</li>
<li class="file-stats">
<a href="#aa79261abf782f3dc603af7fbd5c4b08ed3ddb88">
compiler/GHC/Core/Opt/ConstantFold.hs
</a>
</li>
<li class="file-stats">
<a href="#99771528d6dbafffa79f4900ea74e7d5ec76800c">
compiler/GHC/CoreToByteCode.hs
</a>
</li>
<li class="file-stats">
<a href="#9a679a2680ef6061397f1987091ea9f96ffe095d">
compiler/GHC/Driver/Main.hs
</a>
</li>
<li class="file-stats">
<a href="#73d2b5c14c6cd4cb2c09087042caf1a69ae51b72">
compiler/GHC/HsToCore/Foreign/Call.hs
</a>
</li>
<li class="file-stats">
<a href="#9f0ddacf1490a1a7356d3b8c1b8506b1a8bc6ad4">
compiler/GHC/HsToCore/Foreign/Decl.hs
</a>
</li>
<li class="file-stats">
<a href="#8d8e5922fde8bc19ffa2bc9cae6b6720abb88564">
<span class="new-file">
+
compiler/GHC/HsToCore/PmCheck/Oracle.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#3c19c0be465f9a28d7b69f89c55648080fcc37eb">
compiler/GHC/HsToCore/Quote.hs
</a>
</li>
<li class="file-stats">
<a href="#06ff7bac58fd8cfe0c17b81963b03f4cce86a065">
compiler/GHC/IfaceToCore.hs
</a>
</li>
<li class="file-stats">
<a href="#8858278b4cb7284f96b29b5564bcb426de4fae70">
compiler/GHC/Runtime/Heap/Inspect.hs
</a>
</li>
<li class="file-stats">
<a href="#d7a83b440e11aa7b31112ff697e0a50bbde388d8">
compiler/GHC/StgToCmm/DataCon.hs
</a>
</li>
<li class="file-stats">
<a href="#d12a108e34fe83acc9c99357ae841e22a0af0a23">
compiler/GHC/StgToCmm/Prim.hs
</a>
</li>
<li class="file-stats">
<a href="#13bc6c694b9a1fa78aeab1e992926d759374ecb2">
compiler/GHC/StgToCmm/Utils.hs
</a>
</li>
<li class="file-stats">
<a href="#e65390fa5a32c453a81a1c9a3e1c4464d155ca4a">
compiler/GHC/Tc/Module.hs
</a>
</li>
<li class="file-stats">
<a href="#7dcf5b567a6cd3c9d98cf8d57323fbca1b1536e9">
compiler/GHC/Tc/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#ee98f016857ad5548bb7cdc5dd85246585acdfd6">
compiler/GHC/Types/Literal.hs
</a>
</li>
<li class="file-stats">
<a href="#d3cf57b6a5ebc234dc7689db38ef9b6cf2259c0f">
compiler/GHC/Utils/Outputable.hs
</a>
</li>
<li class="file-stats">
<a href="#0f33fd88c617246c7f89c4477d2d1d24f942df23">
compiler/ghc.cabal.in
</a>
</li>
<li class="file-stats">
<a href="#d87dfc77856eeaef6134e28336290ddcbcf18d7d">
docs/users_guide/9.2.1-notes.rst
</a>
</li>
<li class="file-stats">
<a href="#f1fb2cbc6312f41f6aac14d2046c24ce0c5cbea2">
docs/users_guide/exts/ffi.rst
</a>
</li>
<li class="file-stats">
<a href="#51d77a90635e9ec3ddfb3918005aecda9cc567c0">
ghc/ghc-bin.cabal.in
</a>
</li>
<li class="file-stats">
<a href="#f2d774357fa6061a6d5972714cf4ad7a22e37695">
hadrian/src/Builder.hs
</a>
</li>
<li class="file-stats">
<a href="#acb22db8d0fa26a579b612416f02f6a519b4cb9b">
hadrian/src/Settings/Builders/RunTest.hs
</a>
</li>
<li class="file-stats">
<a href="#f7bfc5e15e7497f29b41f6df46865c151a07955d">
includes/RtsAPI.h
</a>
</li>
</ul>
<h5>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: #777;">
—
<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/87db2edf15b51c0ca3454e6dd93b40bb70edf14e...dfecf8f7553b02736bee8ad638e07d0be5dc9d01">View it on GitLab</a>.
<br>
You're receiving this email because of your account on gitlab.haskell.org.
If you'd like to receive fewer emails, you can
adjust your notification settings.
</p>
</div>
</body>
</html>