<!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>
Sebastian Graf pushed to branch wip/nested-cpr-2019
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/5bcf86063c0e5b6ee0d162ea64c88fdaad89e620">5bcf8606</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2020-05-17T08:46:38-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove duplicate Note [When to print foralls] in GHC.Core.TyCo.Ppr
There are two different Notes named `[When to print foralls]`. The
most up-to-date one is in `GHC.Iface.Type`, but there is a second
one in `GHC.Core.TyCo.Ppr`. The latter is less up-to-date, as it was
written before GHC switched over to using ifaces to pretty-print
types. I decided to just remove the latter and replace it with a
reference to the former.
[ci skip]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/55f0e783d234af103cf4e1d51cd31c99961c5abe">55f0e783</a></strong>
<div>
<span>by Fumiaki Kinoshita</span>
<i>at 2020-05-21T12:10:44-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">base: Add Generic instances to various datatypes under GHC.*
* GHC.Fingerprint.Types: Fingerprint
* GHC.RTS.Flags: GiveGCStats, GCFlags, ConcFlags, DebugFlags, CCFlags, DoHeapProfile, ProfFlags, DoTrace, TraceFlags, TickyFlags, ParFlags and RTSFlags
* GHC.Stats: RTSStats and GCStats
* GHC.ByteOrder: ByteOrder
* GHC.Unicode: GeneralCategory
* GHC.Stack.Types: SrcLoc
Metric Increase:
haddock.base
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a9311cd53d33439e8fe79967ba5fb85bcd114fec">a9311cd5</a></strong>
<div>
<span>by Gert-Jan Bottu</span>
<i>at 2020-05-21T12:11:31-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Explicit Specificity
Implementation for Ticket #16393.
Explicit specificity allows users to manually create inferred type variables,
by marking them with braces.
This way, the user determines which variables can be instantiated through
visible type application.
The additional syntax is included in the parser, allowing users to write
braces in type variable binders (type signatures, data constructors etc).
This information is passed along through the renamer and verified in the
type checker.
The AST for type variable binders, data constructors, pattern synonyms,
partial signatures and Template Haskell has been updated to include the
specificity of type variables.
Minor notes:
- Bumps haddock submodule
- Disables pattern match checking in GHC.Iface.Type with GHC 8.8
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/24e61aad37355fa3a5503b11a60ab7b314a3f405">24e61aad</a></strong>
<div>
<span>by Ben Price</span>
<i>at 2020-05-21T12:12:17-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Lint should say when it is checking a rule
It is rather confusing that when lint finds an error in a rule attached
to a binder, it reports the error as in the RHS, not the rule:
...
In the RHS of foo
We add a clarifying line:
...
In the RHS of foo
In a rule attached to foo
The implication that the rule lives inside the RHS is a bit odd, but
this niggle is already present for unfoldings, whose pattern we are
following.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/78c6523c5106fc56b653fc14fda5741913da8fdc">78c6523c</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-05-21T12:13:01-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">nonmoving: Optimise the write barrier
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/13f6c9d0376214b22d4cd16bd3a8cd7b8d864990">13f6c9d0</a></strong>
<div>
<span>by Andreas Klebinger</span>
<i>at 2020-05-21T12:13:45-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactor linear reg alloc to remember past assignments.
When assigning registers we now first try registers we
assigned to in the past, instead of picking the "first"
one.
This is in extremely helpful when dealing with loops for
which variables are dead for part of the loop.
This is important for patterns like this:
foo = arg1
loop:
use(foo)
...
foo = getVal()
goto loop;
There we:
* assign foo to the register of arg1.
* use foo, it's dead after this use as it's overwritten after.
* do other things.
* look for a register to put foo in.
If we pick an arbitrary one it might differ from the register the
start of the loop expect's foo to be in.
To fix this we simply look for past register assignments for
the given variable. If we find one and the register is free we
use that register.
This reduces the need for fixup blocks which match the register
assignment between blocks. In the example above between the end
and the head of the loop.
This patch also moves branch weight estimation ahead of register
allocation and adds a flag to control it (cmm-static-pred).
* It means the linear allocator is more likely to assign the hotter
code paths first.
* If it assign these first we are:
+ Less likely to spill on the hot path.
+ Less likely to introduce fixup blocks on the hot path.
These two measure combined are surprisingly effective. Based on nofib
we get in the mean:
* -0.9% instructions executed
* -0.1% reads/writes
* -0.2% code size.
* -0.1% compiler allocations.
* -0.9% compile time.
* -0.8% runtime.
Most of the benefits are simply a result of removing redundant moves
and spills.
Reduced compiler allocations likely are the result of less code being
generated. (The added lookup is mostly non-allocating).
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/edc2cc588add3f23b3650f15d3f495943f2c06f9">edc2cc58</a></strong>
<div>
<span>by Andreas Klebinger</span>
<i>at 2020-05-21T12:14:25-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">NCG: Codelayout: Distinguish conditional and other branches.
In #18053 we ended up with a suboptimal code layout because
the code layout algorithm didn't distinguish between conditional
and unconditional control flow.
We can completely eliminate unconditional control flow instructions
by placing blocks next to each other, not so much for conditionals.
In terms of implementation we simply give conditional branches less
weight before computing the layout.
Fixes #18053
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b7a6b2f4c690a9711339462114a538a85dcb7d83">b7a6b2f4</a></strong>
<div>
<span>by Gleb Popov</span>
<i>at 2020-05-21T12:15:26-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Set locale to C.UTF-8.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a8c27cf6eef51adfa6ac9931d4f620645dc24dd3">a8c27cf6</a></strong>
<div>
<span>by Stefan Holdermans</span>
<i>at 2020-05-21T12:16:08-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow spaces in GHCi :script file names
This patch updates the user interface of GHCi so that file names passed
to the ':script' command may contain spaces escaped with a backslash.
For example:
:script foo\ bar.script
The implementation uses a modified version of 'words' that does not
break on escaped spaces.
Fixes #18027.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/82663959d2f1ddbb514a652593bc8064fd69d6aa">82663959</a></strong>
<div>
<span>by Stefan Holdermans</span>
<i>at 2020-05-21T12:16:08-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add extra tests for GHCi :script syntax checks
The syntax for GHCi's ":script" command allows for only a single file
name to be passed as an argument. This patch adds a test for the cases
in which a file name is missing or multiple file names are passed.
Related to #T18027.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a0b79e1b16887371d5cd14d53a607772ca730fb5">a0b79e1b</a></strong>
<div>
<span>by Stefan Holdermans</span>
<i>at 2020-05-21T12:16:08-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow GHCi :script file names in double quotes
This patch updates the user interface of GHCi so that file names passed
to the ':script' command can be wrapped in double quotes.
For example:
:script "foo bar.script"
The implementation uses a modified version of 'words' that treats
character sequences enclosed in double quotes as single words.
Fixes #18027.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/cf5663300c3d8b8b3c7dc2cd0dce2c923ec68987">cf566330</a></strong>
<div>
<span>by Stefan Holdermans</span>
<i>at 2020-05-21T12:16:08-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update documentation for GHCi :script
This patch adds the fixes that allow for file names containing spaces to
be passed to GHCi's ':script' command to the release notes for 8.12 and
expands the user-guide documentation for ':script' by mentioning how
such file names can be passed.
Related to #18027.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0004ccb885e534c386ceae21580fc59ec7ad0ede">0004ccb8</a></strong>
<div>
<span>by Tuan Le</span>
<i>at 2020-05-21T12:16:46-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">llvmGen: Consider Relocatable read-only data as not constantReferences: #18137
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/964d3ea21e734a4b2ad3ab97955274a003242121">964d3ea2</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-21T12:17:30-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use `Checker` for `tc_pat`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b797aa420b65c8ee214a4fc94813d0d597352bb4">b797aa42</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-21T12:17:30-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use `Checker` for `tc_lpat` and `tc_lpats`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5108e84abb102920ab28e3aeb083ab6e483eb2f6">5108e84a</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-21T12:17:30-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">More judiciously panic in `ts_pat`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/510e04515bb3eaed95d374d685b5322ad7e6389d">510e0451</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-21T12:17:30-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Put `PatEnv` first in `GHC.Tc.Gen.Pat.Checker`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/cb4231db322f4a2bb146c456852df6cdf1498dca">cb4231db</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-21T12:17:30-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Tiny cleaup eta-reduce away a function argument
In GHC, not in the code being compiled!
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/6890c38d4568ca444cccc47dd1a86c5e020c3521">6890c38d</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-21T12:17:30-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use braces with do in `SplicePat` case for consistency
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3451584f98d4a6b26dba4079b9a703e70a49a3ab">3451584f</a></strong>
<div>
<span>by buggymcbugfix</span>
<i>at 2020-05-21T12:18:06-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix spelling mistakes and typos
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b552e53136abfd6d728563338df99bf899d16139">b552e531</a></strong>
<div>
<span>by buggymcbugfix</span>
<i>at 2020-05-21T12:18:06-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add INLINABLE pragmas to Enum list producers
The INLINABLE pragmas ensure that we export stable (unoptimised) unfoldings in
the interface file so we can do list fusion at usage sites.
Related tickets: #15185, #8763, #18178.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e748006355d85fcddd17ba206873b0051219abb1">e7480063</a></strong>
<div>
<span>by buggymcbugfix</span>
<i>at 2020-05-21T12:18:06-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Piggyback on Enum Word methods for Word64
If we are on a 64 bit platform, we can use the efficient Enum Word
methods for the Enum Word64 instance.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/892b0c41816fca4eeea42ca03a43aac473311837">892b0c41</a></strong>
<div>
<span>by buggymcbugfix</span>
<i>at 2020-05-21T12:18:06-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Document INLINE(ABLE) pragmas that enable fusion
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2b363ebb988cbf8c92df24eef5366293a80ecb19">2b363ebb</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2020-05-21T12:18:45-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">MR template should ask for key part</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a95bbd0bdf06d7d61b0bef6de77b59ca31b2c32d">a95bbd0b</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-21T12:19:37-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make `Int`'s `mod` and `rem` strict in their first arguments
They used to be strict until 4d2ac2d (9 years ago).
It's obviously better to be strict for performance reasons.
It also blocks #18067.
NoFib results:
```
--------------------------------------------------------------------------------
Program Allocs Instrs
--------------------------------------------------------------------------------
integer -1.1% +0.4%
wheel-sieve2 +21.2% +20.7%
--------------------------------------------------------------------------------
Min -1.1% -0.0%
Max +21.2% +20.7%
Geometric Mean +0.2% +0.2%
```
The regression in `wheel-sieve2` is due to reboxing that likely will go
away with the resolution of #18067. See !3282 for details.
Fixes #18187.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d3d055b8d10a549e42d18ae4859bc902f939f534">d3d055b8</a></strong>
<div>
<span>by Galen Huntington</span>
<i>at 2020-05-21T12:20:18-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Clarify pitfalls of NegativeLiterals; see #18022.</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1b508a9e14c7c894ff4f080f099f3947813f41ec">1b508a9e</a></strong>
<div>
<span>by Alexey Kuleshevich</span>
<i>at 2020-05-21T12:21:02-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix wording in primops documentation to reflect the correct reasoning:
* Besides resizing functions, shrinking ones also mutate the
size of a mutable array and because of those two `sizeofMutabeByteArray`
and `sizeofSmallMutableArray` are now deprecated
* Change reference in documentation to the newer functions `getSizeof*`
instead of `sizeof*` for shrinking functions
* Fix incorrect mention of "byte" instead of "small"
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/4ca0c8a17b9d3a7e8ff8a93cc9e83be5173f8e14">4ca0c8a1</a></strong>
<div>
<span>by Andreas Klebinger</span>
<i>at 2020-05-21T12:21:53-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Don't variable-length encode magic iface constant.
We changed to use variable length encodings for many types by default,
including Word32. This makes sense for numbers but not when Word32 is
meant to represent four bytes.
I added a FixedLengthEncoding newtype to Binary who's instances
interpret their argument as a collection of bytes instead of a number.
We then use this when writing/reading magic numbers to the iface file.
I also took the libery to remove the dummy iface field.
This fixes #18180.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a127508137ba69d2fe1e563d2bbb9fdd9120ae85">a1275081</a></strong>
<div>
<span>by Krzysztof Gogolewski</span>
<i>at 2020-05-21T12:22:35-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a regression test for #11506
The testcase works now.
See explanation in https://gitlab.haskell.org/ghc/ghc/issues/11506#note_273202
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8a816e5fbe02c476f51ec92563cad8247ffc90ba">8a816e5f</a></strong>
<div>
<span>by Krzysztof Gogolewski</span>
<i>at 2020-05-21T12:23:55-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Sort deterministically metric output
Previously, we sorted according to the test name and way,
but the metrics (max_bytes_used/peak_megabytes_allocated etc.)
were appearing in nondeterministic order.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/566cc73f46d67e2b36fda95d0253067bb0ecc12f">566cc73f</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-21T12:24:45-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Move isDynLinkName into GHC.Types.Name
It doesn't belong into GHC.Unit.State
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d830bbc9921bcc59164a0a18f0e0874ae4ce226e">d830bbc9</a></strong>
<div>
<span>by Adam Sandberg Ericsson</span>
<i>at 2020-05-23T13:36:20-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">docs: fix formatting and add some links
[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/49301ad6226d9a83d110bee8c419615dd94f5ded">49301ad6</a></strong>
<div>
<span>by Andrew Martin</span>
<i>at 2020-05-23T13:37:01-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Implement cstringLength# and FinalPtr
This function and its accompanying rule resolve issue #5218.
A future PR to the bytestring library will make the internal
Data.ByteString.Internal.unsafePackAddress compute string length
with cstringLength#. This will improve the status quo because it is
eligible for constant folding.
Additionally, introduce a new data constructor to ForeignPtrContents
named FinalPtr. This additional data constructor, when used in the
IsString instance for ByteString, leads to more Core-to-Core
optimization opportunities, fewer runtime allocations, and smaller
binaries.
Also, this commit re-exports all the functions from GHC.CString
(including cstringLength#) in GHC.Exts. It also adds a new test
driver. This test driver is used to perform substring matches on Core
that is dumped after all the simplifier passes. In this commit, it is
used to check that constant folding of cstringLength# works.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/dcd6bdcce57430d08b335014625722c487ea08e4">dcd6bdcc</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-05-23T13:37:48-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">simplCore: Ignore ticks in rule templates
This fixes #17619, where a tick snuck in to the template of a rule,
resulting in a panic during rule matching. The tick in question was
introduced via post-inlining, as discussed in `Note [Simplifying
rules]`. The solution we decided upon was to simply ignore ticks in the
rule template, as discussed in `Note [Tick annotations in RULE
matching]`.
Fixes #18162.
Fixes #17619.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/82cb8913b38d44ef20e928ff8b08f3f0770ebf80">82cb8913</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-05-23T13:38:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #18145 and also avoid needless work with implicit vars
- `forAllOrNothing` now is monadic, so we can trace whether we bind
an explicit `forall` or not.
- #18145 arose because the free vars calculation was needlessly
complex. It is now greatly simplified.
- Replaced some other implicit var code with `filterFreeVarsToBind`.
Co-authored-by: Ryan Scott <ryan.gl.scott@gmail.com>
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a60dc83552c38af9bbc159bd4e092531196db9c0">a60dc835</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-05-23T13:39:12-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump process submodule
Fixes #17926.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/856adf54ab50fc3be66d17a0b94ba3074453b279">856adf54</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-05-23T13:40:21-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">users-guide: Clarify meaning of -haddock flag
Fixes #18206.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/7ae57afd7abee9dec1050d9feace254ac04800bc">7ae57afd</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-05-23T13:41:03-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">git: Add ignored commits file
This can be used to tell git to ignore bulk renaming commits like the
recently-finished module hierarchy refactoring. Configured with,
git config blame.ignoreRevsFile .git-ignore-revs
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/63d30e60b9ab76ed48fa9539957e7b29a2a8c611">63d30e60</a></strong>
<div>
<span>by jneira</span>
<i>at 2020-05-24T01:54:42-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add hie-bios script for windows systems
It is a direct translation of the sh script
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/59182b88aaa72d346b480b6aa14a9244915e1189">59182b88</a></strong>
<div>
<span>by jneira</span>
<i>at 2020-05-24T01:54:42-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Honour previous values for CABAL and CABFLAGS
The immediate goal is let the hie-bios.bat script
set CABFLAGS with `-v0` and remove all cabal output
except the compiler arguments
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/932dc54e13a8e2f60ea90af98682cc1011b9533e">932dc54e</a></strong>
<div>
<span>by jneira</span>
<i>at 2020-05-24T01:54:42-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add specific configuration for windows in hie.yaml
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e0eda0707d6cc3d5a85cfb13543df61623e82070">e0eda070</a></strong>
<div>
<span>by jneira</span>
<i>at 2020-05-24T01:54:42-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove not needed hie-bios output
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a0ea59d641d400543e9e803007500da01eedf48a">a0ea59d6</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T01:55:24-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Move Config module into GHC.Settings
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/37430251c3f684c46e893552dba78653d80e5243">37430251</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T01:55:24-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Rename GHC.Core.Arity into GHC.Core.Opt.Arity
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a426abb9b41de6097e888b9fdca7b275306b17c9">a426abb9</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T01:55:24-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Rename GHC.Hs.Types into GHC.Hs.Type
See discussion in https://gitlab.haskell.org/ghc/ghc/issues/13009#note_268610
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1c91a7a095331d8c776f6ecd74803026e0104502">1c91a7a0</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T01:55:24-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump haddock submodule
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/66bd24d197251b9907cbffba3d5d8a3f5e3c2e80">66bd24d1</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2020-05-24T01:56:03-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add orderingTyCon to wiredInTyCons (#18185)
`Ordering` needs to be wired in for use in the built-in `CmpNat` and
`CmpSymbol` type families, but somehow it was never added to the list
of `wiredInTyCons`, leading to the various oddities observed
in #18185. Easily fixed by moving `orderingTyCon` from
`basicKnownKeyNames` to `wiredInTyCons`.
Fixes #18185.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/01c43634d443bd3cc0b95b43a7180e12230b845d">01c43634</a></strong>
<div>
<span>by Matthew Pickering</span>
<i>at 2020-05-24T01:56:42-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove unused hs-boot file
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/7a07aa718110071ee30eebadf0b4b372e8e7fc8e">7a07aa71</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T15:22:17-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: fix cross-compiler build (#16051)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/15ccca16e2ecdde0a4e646c6d7515e00a7f364d3">15ccca16</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T15:22:17-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: fix distDir per stage
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b420fb2474650e6dfbd66afd199f28492f900f75">b420fb24</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-05-24T15:22:17-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: fix hp2ps error during cross-compilation
Fixed by @alp (see https://gitlab.haskell.org/ghc/ghc/issues/16051#note_274265)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/cd339ef0e8ce940902df79ed1d93b3af50ea6f77">cd339ef0</a></strong>
<div>
<span>by Joshua Price</span>
<i>at 2020-05-24T15:22:56-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make Unicode brackets opening/closing tokens (#18225)
The tokens `[|`, `|]`, `(|`, and `|)` are opening/closing tokens as
described in GHC Proposal #229. This commit makes the unicode
variants (`⟦`, `⟧`, `⦇`, and `⦈`) act the same as their ASCII
counterparts.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/61a4646449a8aa080655b8b03527e2ec680036d0">61a46464</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:06+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Nested CPR
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/560145859b80ff1d5a6db8179dd809bb3bec9c67">56014585</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:06+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Move tests from stranal to cpranal
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/32bab2997e744b4e53e8911ceac694e186e5f1d9">32bab299</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:06+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Accept FacState
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5b452873018108a97342662dab6d5bbb12ee7c80">5b452873</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:06+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Factor Cpr and Termination into a joint lattice
As a result, we don't even have to export Termination from Cpr. Neat!
Also I realised there is a simpler and more sound way to generate and
unleash CPR signatures.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/051e28e1961a0c3850c8e2ddece6ef3f82dd8eb7">051e28e1</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:42+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Consider unboxing effects of WW better and get rid of hack
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/4d0c1f9d35a0ea1688213574fedf951f51ecc9aa">4d0c1f9d</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">stuff
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0487b064f26f0b5b0477ac4e2ac34439f8fc2f61">0487b064</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Debug output
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/630ce44dba21cb7ddc8835b7fe4bf77d45e63b3c">630ce44d</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">A slew of testsuite changes
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f1234f76d3ddc108af27160f0a3cf4df1fbe957c">f1234f76</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix T1600
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3f3d7881032256ba2dd10f2e9b3afbc67561c38a">3f3d7881</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Inline `decodeDoubleInteger` and constant-fold `decodeDouble_Int64#` instead
Currently, `decodeDoubleInteger` is known-key so that it can be
recognised in constant folding. But that is very brittle and doesn't
survive worker/wrapper, which we even do for
`NOINLINE`/`CONSTANT_FOLDED` things since #13143.
Also it is a trade-off: The implementation of `decodeDoubleInteger`
allocates an `Integer` box that never cancels aways if we don't inline
it.
Hence we recognise the `decodeDouble_Int64#` primop instead in constant
folding, so that we can inline `decodeDoubleInteger`.
You may wonder how this affects performance of code using
`integer-simple`; Apparently, according to @hsyl20 this is not a concern
since we will hopefully land !2231 soon.
Fixes #18092.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2e4bb983a6d89d4b56f0150a3691693dd42a0504">2e4bb983</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix primop termination
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8dbfd893d44e8f0ca46792b9e925cea2d3d75640">8dbfd893</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:44+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Test for DataCon wrapper CPR
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f9386552f91348f07f8e0e7b9097b4e94ff8d6a8">f9386552</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix CPR of bottoming functions/primops
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2472d714e06b19fc20133ee04727d6afabbda705">2472d714</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix DataConWrapperCpr and accept other test outputs
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e8aabb57597f991f4ee261e150f03920dba31f30">e8aabb57</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Accept two more changed test outputs
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d0a9c04616e703cd7f6af572c8cfb8fac98342ba">d0a9c046</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update CaseBinderCPR with a new function
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8143ce545c66a4414fbad8ceda2fe335bc661fc6">8143ce54</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Don't give the case binder the CPR property
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0dfaf57e4d702f209816c5a089c85f66fee29beb">0dfaf57e</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Prune CPR sigs to constant depth on all bindings
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/05642eb3c68b60c7c201c2d870e772d0467fd4c5">05642eb3</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use variable length coding for ConTags
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/159777d49d5f4486950f6ffd9d443c1fbf868d69">159777d4</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Accept testuite output
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/9b391fd52c25e7a8f001b5037a5cd9e580082401">9b391fd5</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Don't attach CPR sigs to expandable bindings; transform their unfoldings instead
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/32f292818061114ebfe6f35f50accf4f648c9c53">32f29281</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Revert "Don't give the case binder the CPR property"
This reverts commit 910edd76d5fe68b58c74f3805112f9faef4f2788.
It seems we broke too much with this change. We lost our big win in
`fish`.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/13545e2dd8c29f509f297d6a733d81606d12d0fe">13545e2d</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">A more modular and configurable approach to optimistic case binder CPR
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/545ba9d16c4fca171770c6e08e00690512b6d1bc">545ba9d1</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix T9291
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b58def2293307fc2cd6e53bb717cd890721afdc0">b58def22</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Document -fcase-binder-cpr-depth in the user's guide
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bb965505cb67576df9e068a9036711d1a83ed18b">bb965505</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Rebase woes
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/69fe0bd65b5b4a7609c6c3328ea8b062f9e4bd1e">69fe0bd6</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Testsuite changes
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d33b8ba7e3e42f12a1f8fe463fd76b4cd133bc56">d33b8ba7</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactoring around cprAnalBind
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2594ade04814abc16db74367265be92acc82c94a">2594ade0</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2020-05-26T11:26:45+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix case binder CPR by not looking into unfoldings of case binders
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#70f0e3f682e0543f692942cb7bafd17134d6b88b">
<span class="new-file">
+
.git-ignore-revs
</span>
</a>
</li>
<li class="file-stats">
<a href="#587d266bb27a4dc3022bbed44dfa19849df3044c">
.gitlab-ci.yml
</a>
</li>
<li class="file-stats">
<a href="#157f7634c25bc6366cb7c9c9edb48e819dce38db">
.gitlab/ci.sh
</a>
</li>
<li class="file-stats">
<a href="#b25b374c2459de3e2aaed42163f492c8b8614385">
.gitlab/merge_request_templates/merge-request.md
</a>
</li>
<li class="file-stats">
<a href="#0887cf39c5cdf9cf8d6758f410d7dab3023c0d77">
compiler/GHC/Builtin/Names.hs
</a>
</li>
<li class="file-stats">
<a href="#57f535740df5928fb0193abc3b28ca771369d8fd">
<span class="deleted-file">
−
compiler/GHC/Builtin/Names.hs-boot
</span>
</a>
</li>
<li class="file-stats">
<a href="#06764eb0158306b83ab1998d18316392a51838c2">
compiler/GHC/Builtin/Names/TH.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="#f73a4fa90a8eb153bccdcfcc9f63c15edcd66785">
compiler/GHC/Cmm.hs
</a>
</li>
<li class="file-stats">
<a href="#db697f6aea9f93f1583f1d5c62d25570a1e07f73">
compiler/GHC/Cmm/CLabel.hs
</a>
</li>
<li class="file-stats">
<a href="#10b61652f9817945bb54ccf8fc40f8a664ca3c30">
compiler/GHC/CmmToAsm.hs
</a>
</li>
<li class="file-stats">
<a href="#5986ebaacfa99d264abfd2f7ef19d99a64db720f">
compiler/GHC/CmmToAsm/BlockLayout.hs
</a>
</li>
<li class="file-stats">
<a href="#d6e95c6ffd8955a51f59d69de7525bebd693db69">
compiler/GHC/CmmToAsm/CFG.hs
</a>
</li>
<li class="file-stats">
<a href="#b131e0d591301ee7a1c76bbd812f3d14783e934f">
compiler/GHC/CmmToAsm/Dwarf.hs
</a>
</li>
<li class="file-stats">
<a href="#ee14f325b8d394d681c0d3c18a3477016d1092ef">
compiler/GHC/CmmToAsm/Instr.hs
</a>
</li>
<li class="file-stats">
<a href="#83a3b2df5c77503c3a8c6df05a7654333d30cac3">
compiler/GHC/CmmToAsm/Reg/Linear.hs
</a>
</li>
<li class="file-stats">
<a href="#e7e32ef13a93a68891f700047f89c45df0e3772d">
compiler/GHC/CmmToAsm/Reg/Linear/Base.hs
</a>
</li>
<li class="file-stats">
<a href="#b3464ce8651c663fa952441e77c36955a283cd00">
compiler/GHC/CmmToAsm/Reg/Linear/PPC.hs
</a>
</li>
<li class="file-stats">
<a href="#9c35bb499c0b984f0940353f6f8514d39fe10870">
compiler/GHC/CmmToAsm/Reg/Linear/SPARC.hs
</a>
</li>
<li class="file-stats">
<a href="#8fc0cb54eee9a1662a2e0ced10fc6eef66561a72">
compiler/GHC/CmmToAsm/Reg/Linear/State.hs
</a>
</li>
<li class="file-stats">
<a href="#8a5d5b6d1415946cdbebc680a0c9d26ebca2a497">
compiler/GHC/CmmToAsm/Reg/Linear/X86.hs
</a>
</li>
<li class="file-stats">
<a href="#c2a3ab492c92cc765c97d9d8a6537aacdd65f1f9">
compiler/GHC/CmmToAsm/Reg/Linear/X86_64.hs
</a>
</li>
<li class="file-stats">
<a href="#76664ab267df4fc0bec2465efd78bf0afacfe3a7">
compiler/GHC/CmmToC.hs
</a>
</li>
<li class="file-stats">
<a href="#c74cd867f4159f4c755af854485b9cc98fbc55fe">
compiler/GHC/CmmToLlvm/Data.hs
</a>
</li>
<li class="file-stats">
<a href="#783e5dae6e86931f06700fc088fb7d48c8a07386">
compiler/GHC/Core/Coercion.hs
</a>
</li>
<li class="file-stats">
<a href="#b452cc5181a4af3460c43a4e3e4b5edaa238b4e0">
compiler/GHC/Core/ConLike.hs
</a>
</li>
<li class="file-stats">
<a href="#6fcf64907fb5bdd93082d2d1eb94e4566e735865">
compiler/GHC/Core/DataCon.hs
</a>
</li>
<li class="file-stats">
<a href="#f1ee1dbd326408dee78428b876306e279a748497">
compiler/GHC/Core/DataCon.hs-boot
</a>
</li>
<li class="file-stats">
<a href="#36a42448a83a9d1f6df8475f03ead2eed199dd8e">
compiler/GHC/Core/Lint.hs
</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/3ae7eb1f530eba8e30fb85a0f5d018e15666b882...2594ade04814abc16db74367265be92acc82c94a">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>