<!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>
Vladislav Zavialov pushed to branch wip/semigroup-sdoc
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/0da186c1b5a47e08e91c1c674d46c040c83932fc">0da186c1</a></strong>
<div>
<span>by Krzysztof Gogolewski</span>
<i>at 2020-04-14T07:55:20-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Change zipWith to zipWithEqual in a few places
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/074c1ccd3f8c3fcab117e336316173e8e869230a">074c1ccd</a></strong>
<div>
<span>by Andreas Klebinger</span>
<i>at 2020-04-14T07:55:55-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Small change to the windows ticker.

We already have a function to go from time to ms so use it.
Also expand on the state of timer resolution.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b69cc8842aa7e2df52b92a9c9ad3b9d8dcf624ab">b69cc884</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2020-04-14T07:56:38-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">hadrian: get rid of unnecessary levels of nesting in source-dist
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d0c3b0696f1ca809ebd83b5fc2c0b911cde38e77">d0c3b069</a></strong>
<div>
<span>by Julien Debon</span>
<i>at 2020-04-14T07:57:16-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">doc (Foldable): Add examples to Data.Foldable

See #17929
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5b08e0c06e038448a63aa9bd7f163b23d824ba4b">5b08e0c0</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-14T23:28:20-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">StgCRun: Enable unwinding only on Linux

It's broken on macOS due and SmartOS due to assembler differences
(#15207) so let's be conservative in enabling it. Also, refactor things
to make the intent clearer.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/27cc2e7b1c1268e59c9d16b4530f27c0d40e9464">27cc2e7b</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-14T23:28:57-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Don't mark evacuate_large as inline

This function has two callsites and is quite large. GCC consequently
decides not to inline and warns instead. Given the situation, I can't
blame it. Let's just remove the inline specifier.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/9853fc5e3556e733b56976b0a2fce9e82130a9ef">9853fc5e</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-14T23:29:48-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">base: Enable large file support for OFD locking impl.

Not only is this a good idea in general but this should also avoid
issue #17950 by ensuring that off_t is 64-bits.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/7b41f21bbfa9e266ba6654b08c3f9fec549c8bca">7b41f21b</a></strong>
<div>
<span>by Matthew Pickering</span>
<i>at 2020-04-14T23:30:24-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: Make -i paths absolute

The primary reason for this change is that ghcide does not work with
relative paths. It also matches what cabal and stack do, they always
pass absolute paths.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/41230e2601703df0233860be3f7d53f3a01bdbe5">41230e26</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:01-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Zero out pinned block alignment slop when profiling

The heap profiler currently cannot traverse pinned blocks because of
alignment slop. This used to just be a minor annoyance as the whole block
is accounted into a special cost center rather than the respective object's
CCS, cf. #7275. However for the new root profiler we would like to be able
to visit _every_ closure on the heap. We need to do this so we can get rid
of the current 'flip' bit hack in the heap traversal code.

Since info pointers are always non-zero we can in principle skip all the
slop in the profiler if we can rely on it being zeroed. This assumption
caused problems in the past though, commit a586b33f8e ("rts: Correct
handling of LARGE ARR_WORDS in LDV profiler"), part of !1118, tried to use
the same trick for BF_LARGE objects but neglected to take into account that
shrink*Array# functions don't ensure that slop is zeroed when not
compiling with profiling.

Later, commit 0c114c6599 ("Handle large ARR_WORDS in heap census (fix
as we will only be assuming slop is zeroed when profiling is on.

This commit also reduces the ammount of slop we introduce in the first
place by calculating the needed alignment before doing the allocation for
small objects where we know the next available address. For large objects
we don't know how much alignment we'll have to do yet since those details
are hidden behind the allocateMightFail function so there we continue to
allocate the maximum additional words we'll need to do the alignment.

So we don't have to duplicate all this logic in the cmm code we pull it
into the RTS allocatePinned function instead.

Metric Decrease:
    T7257
    haddock.Cabal
    haddock.base
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/15fa9bd6dd2d0b8d1fcd7135c85ea0d60853340d">15fa9bd6</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:01-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Expand and add more notes regarding slop
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/caf3f444bcc29f75145834207da00d938c08c2d3">caf3f444</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:01-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: allocatePinned: Fix confusion about word/byte units
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/c3c0f662df06500a11970fd391d0a88e081a5296">c3c0f662</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:01-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Underline some Notes as is conventional
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e149dea9bb89b77d34f50075946d6b4751a974f0">e149dea9</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:38-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Fix nomenclature in OVERWRITING_CLOSURE macros

The additional commentary introduced by commit 8916e64e5437 ("Implement
shrinkSmallMutableArray# and resizeSmallMutableArray#.") unfortunately got
this wrong. We set 'prim' to true in overwritingClosureOfs because we
_don't_ want to call LDV_recordDead().

The reason is because of this "inherently used" distinction made in the LDV
profiler so I rename the variable to be more appropriate.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1dd3d18c2afd9e6009cd53295d26f8b31ca58fec">1dd3d18c</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:38-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove call to LDV_RECORD_CREATE for array resizing
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/19de2fb090a25ab0d640d0cd5aef09f35e7455a0">19de2fb0</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-14T23:31:38-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Assert LDV_recordDead is not called for inherently used closures

The comments make it clear LDV_recordDead should not be called for
inhererently used closures, so add an assertion to codify this fact.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0b934e30417a767063625494ecf135c9d6006f71">0b934e30</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2020-04-14T23:32:14-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump template-haskell version to 2.17.0.0

This requires bumping the `exceptions` and `text` submodules to bring
in commits that bump their respective upper version bounds on
`template-haskell`.

Fixes #17645. Fixes #17696.

Note that the new `text` commit includes a fair number of additions
to the Haddocks in that library. As a result, Haddock has to do more
work during the `haddock.Cabal` test case, increasing the number of
allocations it requires. Therefore,

-------------------------
Metric Increase:
    haddock.Cabal
-------------------------
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/22cc8e513fcfa89a4391f075534d903596a05895">22cc8e51</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2020-04-15T17:48:47-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #18052 by using pprPrefixOcc in more places

This fixes several small oversights in the choice of pretty-printing
function to use. Fixes #18052.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ec77b2f16a78b13f54794c954953d8878dea9db2">ec77b2f1</a></strong>
<div>
<span>by Daniel Gröber</span>
<i>at 2020-04-15T17:49:24-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: ProfHeap: Fix wrong time in last heap profile sample

We've had this longstanding issue in the heap profiler, where the time of
the last sample in the profile is sometimes way off causing the rendered
graph to be quite useless for long runs.

It seems to me the problem is that we use mut_user_time() for the last
sample as opposed to getRTSStats(), which we use when calling heapProfile()
in GC.c.

The former is equivalent to getProcessCPUTime() but the latter does
some additional stuff:

    getProcessCPUTime() - end_init_cpu - stats.gc_cpu_ns -
    stats.nonmoving_gc_cpu_ns

So to fix this just use getRTSStats() in both places.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/85fc32f03a6df92ec8d4ec9accca3c11b31a1596">85fc32f0</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-17T12:45:25-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: fix dyn_o/dyn_hi rule (#17534)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bfde3b76ac7f5a72eca012fe34ac1340a5ce2011">bfde3b76</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2020-04-17T12:46:02-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #18065 by fixing an InstCo oversight in Core Lint

There was a small thinko in Core Lint's treatment of `InstCo`
coercions that ultimately led to #18065. The fix: add an apostrophe.
That's it!

Fixes #18065.

Co-authored-by: Simon Peyton Jones <simonpj@microsoft.com>
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a05348ebaa11d563ab2e33325055317ff3cb8afc">a05348eb</a></strong>
<div>
<span>by Cale Gibbard</span>
<i>at 2020-04-17T13:08:47-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Change the fail operator argument of BindStmt to be a Maybe

Don't use noSyntaxExpr for it. There is no good way to defensively case
on that, nor is it clear one ought to do so.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/79e27144db7011f6d01a2f5ed15fd110d579bb8e">79e27144</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2020-04-17T13:08:47-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use trees that grow for rebindable operators for `<-` binds

Also add more documentation.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/18bc16ed78dfa1fe9498c5ac1ca38e9f84267872">18bc16ed</a></strong>
<div>
<span>by Cale Gibbard</span>
<i>at 2020-04-17T13:08:47-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use FailOperator in more places, define a couple datatypes (XBindStmtRn and XBindStmtTc) to help clarify the meaning of XBindStmt in the renamer and typechecker
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/84cc8394d075cea236faa0bcd9ef0a84de89ee8c">84cc8394</a></strong>
<div>
<span>by Simon Peyton Jones</span>
<i>at 2020-04-18T13:20:29-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a missing zonk in tcHsPartialType

I omitted a vital zonk when refactoring tcHsPartialType in
   commit 48fb3482f8cbc8a4b37161021e846105f980eed4
   Author: Simon Peyton Jones <simonpj@microsoft.com>
   Date:   Wed Jun 5 08:55:17 2019 +0100

   Fix typechecking of partial type signatures

This patch fixes it and adds commentary to explain why.

Fixes #18008
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2ee96ac1aa2cbff4e70bc45988930d64599029f2">2ee96ac1</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-18T13:21:05-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Bump FreeBSD bootstrap compiler to 8.10.1
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/434312e5fdde91d6ad7b6d199bbb560a72ab6b89">434312e5</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-18T13:21:05-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Enable FreeBSD job for so-labelled MRs
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ddffb2278a22b7c0e3a9fce11ada67a471243409">ddffb227</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-18T13:21:05-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Use rules syntax for conditional jobs
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/e2586828a30202a28dcacac9ab7fc83c43da9e02">e2586828</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-04-18T13:21:05-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump hsc2hs submodule
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/15ab6cd548f284732a7f89d78c2b89b1bfc4ea1d">15ab6cd5</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2020-04-18T13:21:44-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Improve prepForeignCall error reporting

Show parameters and description of the error code when ffi_prep_cif
fails.

This may be helpful for debugging #17018.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3ca52151881451ce5b3a7740d003e811b586140d">3ca52151</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-18T20:04:14+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">GHC.Core.Opt renaming

* GHC.Core.Op                  => GHC.Core.Opt
* GHC.Core.Opt.Simplify.Driver => GHC.Core.Opt.Driver
* GHC.Core.Opt.Tidy            => GHC.Core.Tidy
* GHC.Core.Opt.WorkWrap.Lib    => GHC.Core.Opt.WorkWrap.Utils

As discussed in:
 * https://mail.haskell.org/pipermail/ghc-devs/2020-April/018758.html
 * https://gitlab.haskell.org/ghc/ghc/issues/13009#note_264650
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/15312bbb53f247c9ed2c5cf75100a9f44c1c7227">15312bbb</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-18T20:04:46+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Modules (#13009)

* SysTools
* Parser
* GHC.Builtin
* GHC.Iface.Recomp
* Settings

Update Haddock submodule

Metric Decrease:
    Naperian
    parsing001
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/eaed0a3289e4c24ff1a70c6fc4b7f8bae6cd2dd3">eaed0a32</a></strong>
<div>
<span>by Alexis King</span>
<i>at 2020-04-19T03:16:44-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add missing addInScope call for letrec binders in OccurAnal

This fixes #18044, where a shadowed variable was incorrectly substituted
by the binder swap on the RHS of a floated-in letrec. This can only
happen when the uniques line up *just* right, so writing a regression
test would be very difficult, but at least the fix is small and
straightforward.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/36882493fcaa9dd2eefa7184929765189ac339ad">36882493</a></strong>
<div>
<span>by Shayne Fletcher</span>
<i>at 2020-04-20T04:36:43-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Derive Ord instance for Extension

Metric Increase:
   T12150
   T12234
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b43365ad62d73afd5c58467ab9a4f9523ab09c18">b43365ad</a></strong>
<div>
<span>by Simon Peyton Jones</span>
<i>at 2020-04-20T04:37:20-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix a buglet in redundant-constraint warnings

Ticket #18036 pointed out that we were reporting a redundant
constraint when it really really wasn't.

Turned out to be a buglet in the SkolemInfo for the
relevant implication constraint.  Easily fixed!
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d5fae7da02cff1c7ec7b8e472f85d23aef098968">d5fae7da</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2020-04-20T14:39:28-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Mark T12010 fragile on 32-bit
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bca02fca0119354a6201fd5d019a553015ba2dd8">bca02fca</a></strong>
<div>
<span>by Adam Sandberg Ericsson</span>
<i>at 2020-04-21T06:38:45-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">docs: drop note about not supporting shared libraries on unix systems

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/6655f93324b7f1d30a6baaedfecae455d5e08e39">6655f933</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-21T06:39:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use ParserFlags in GHC.Runtime.Eval (#17957)

Instead of passing `DynFlags` to functions such as `isStmt` and
`hasImport` in `GHC.Runtime.Eval` we pass `ParserFlags`. It's a much
simpler structure that can be created purely with `mkParserFlags'`.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/70be0fbcefa07ff164437476bf2809ea7c3ff495">70be0fbc</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-21T06:39:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">GHC.Runtime: avoid DynFlags (#17957)

* add `getPlatform :: TcM Platform` helper
* remove unused `DynFlags` parameter from `emptyPLS`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/35e43d48a9a3ab22da90c4c2ea2c805fe762b9c5">35e43d48</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-21T06:39:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Avoid DynFlags in Ppr code (#17957)

* replace `DynFlags` parameters with `SDocContext` parameters for a few
  Ppr related functions: `bufLeftRenderSDoc`, `printSDoc`,
  `printSDocLn`, `showSDocOneLine`.

* remove the use of `pprCols :: DynFlags -> Int` in Outputable. We
  already have the information via `sdocLineLength :: SDocContext ->
  Int`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ce5c2999d2e356d034fbf1045a2383c0ac24f15f">ce5c2999</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-21T06:39:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Avoid using sdocWithDynFlags (#17957)

Remove one use of `sdocWithDynFlags` from `GHC.CmmToLlvm.llvmCodeGen'`
and from `GHC.Driver.CodeOutput.profilingInitCode`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f2a98996e7792f572ab685f29742e3476be81166">f2a98996</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-21T06:39:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Avoid `sdocWithDynFlags` in `pprCLbl` (#17957)

* add a `DynFlags` parameter to `pprCLbl`
* put `maybe_underscore` and `pprAsmCLbl` in a `where` clause to avoid
  `DynFlags` parameters
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/747093b7c23a1cf92b564eb3d9efe2adc15330df">747093b7</a></strong>
<div>
<span>by Sylvain Henry</span>
<i>at 2020-04-21T06:39:32-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">CmmToAsm DynFlags refactoring (#17957)

* Remove `DynFlags` parameter from `isDynLinkName`: `isDynLinkName` used
  to test the global `ExternalDynamicRefs` flag. Now we test it outside of
  `isDynLinkName`

* Add new fields into `NCGConfig`: current unit id, sse/bmi versions,
  externalDynamicRefs, etc.

* Replace many uses of `DynFlags` by `NCGConfig`

* Moved `BMI/SSE` datatypes into `GHC.Platform`
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0fa283769d3427b946dbe7567d24735388897ee1">0fa28376</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2020-04-21T23:57:54+03:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use Semigroup's (<>) for Doc/SDoc

Before this patch, Outputable.hs defined its own (<>) which caused
conflicts with (Data.Semigroup.<>) and thus led to inconvenience.

However, replacing it is not trivial due to a different fixity:

  http://www.haskell.org/pipermail/libraries/2011-November/017066.html

Nevertheless, it is possible to update the pretty-printing code to work
with (<>) of a different fixitiy, and that's what this patch implements.

Now Doc and SDoc are instances of Semigroup.
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<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="#d0d96a6d03668aeab20ebe05e2c4ccb798c7e64c">
compiler/GHC.hs
</a>
</li>
<li class="file-stats">
<a href="#0887cf39c5cdf9cf8d6758f410d7dab3023c0d77">
compiler/prelude/PrelNames.hs

compiler/GHC/Builtin/Names.hs
</a>
</li>
<li class="file-stats">
<a href="#57f535740df5928fb0193abc3b28ca771369d8fd">
compiler/prelude/PrelNames.hs-boot

compiler/GHC/Builtin/Names.hs-boot
</a>
</li>
<li class="file-stats">
<a href="#06764eb0158306b83ab1998d18316392a51838c2">
compiler/prelude/THNames.hs

compiler/GHC/Builtin/Names/TH.hs
</a>
</li>
<li class="file-stats">
<a href="#a1519b7fe8a0d4b42e4aaa927fb6ab5b5da0fcdd">
compiler/prelude/PrimOp.hs

compiler/GHC/Builtin/PrimOps.hs
</a>
</li>
<li class="file-stats">
<a href="#dc9d549002b8cd260ee6d1d2fb35877c74412f91">
compiler/prelude/PrimOp.hs-boot

compiler/GHC/Builtin/PrimOps.hs-boot
</a>
</li>
<li class="file-stats">
<a href="#377cfd14c1f92357465df995ec6537b074051322">
compiler/prelude/TysWiredIn.hs

compiler/GHC/Builtin/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#be7a5c9dc04ecfe7bedb2a2afcc2a51be6719577">
compiler/prelude/TysWiredIn.hs-boot

compiler/GHC/Builtin/Types.hs-boot
</a>
</li>
<li class="file-stats">
<a href="#02362b473a022fb921814e97a6beba08107d38b1">
compiler/typecheck/TcTypeNats.hs

compiler/GHC/Builtin/Types/Literals.hs
</a>
</li>
<li class="file-stats">
<a href="#8a5cd068459120cddf3814e7b9e02003b87647ba">
compiler/prelude/TysPrim.hs

compiler/GHC/Builtin/Types/Prim.hs
</a>
</li>
<li class="file-stats">
<a href="#8dc7109003a77f8a82e987dc1de31466aa956174">
compiler/prelude/KnownUniques.hs

compiler/GHC/Builtin/Uniques.hs
</a>
</li>
<li class="file-stats">
<a href="#6bcb866fdb5388db4ecc395e443a3af4888d9dd5">
compiler/prelude/KnownUniques.hs-boot

compiler/GHC/Builtin/Uniques.hs-boot
</a>
</li>
<li class="file-stats">
<a href="#d95fdf6575459444666f72b2281534e0558a4ba0">
compiler/prelude/PrelInfo.hs

compiler/GHC/Builtin/Utils.hs
</a>
</li>
<li class="file-stats">
<a href="#451725cc4e5d443a3b7c2adcdf224840f953b7e2">
compiler/prelude/primops.txt.pp

compiler/GHC/Builtin/primops.txt.pp
</a>
</li>
<li class="file-stats">
<a href="#073b107caa98ea426694eacd6c08b492801a51a0">
compiler/GHC/ByteCode/Instr.hs
</a>
</li>
<li class="file-stats">
<a href="#11e6f6a348be9920cecad0893a25350137524b4f">
compiler/GHC/ByteCode/Linker.hs
</a>
</li>
<li class="file-stats">
<a href="#5c66928780aaad0eb5888511dc4b0b08492c69fa">
compiler/GHC/ByteCode/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#db697f6aea9f93f1583f1d5c62d25570a1e07f73">
compiler/GHC/Cmm/CLabel.hs
</a>
</li>
<li class="file-stats">
<a href="#2d3721ad8de95e1144493ca545db846672cb109f">
compiler/GHC/Cmm/Info/Build.hs
</a>
</li>
<li class="file-stats">
<a href="#e9c044b79842eca94ef683d075c4bfeca3bbb931">
compiler/GHC/Cmm/Lexer.x
</a>
</li>
<li class="file-stats">
<a href="#6fbb543d5fcea725882dd3b8d4dcd9b02022a4be">
compiler/GHC/Cmm/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#71e696f452eb493722d70306c6f304fc9b2f6a95">
compiler/GHC/Cmm/Parser.y
</a>
</li>
<li class="file-stats">
<a href="#10b61652f9817945bb54ccf8fc40f8a664ca3c30">
compiler/GHC/CmmToAsm.hs
</a>
</li>
<li class="file-stats">
<a href="#7223682bb3d11ed5bc80db47627d3d9ef7fa2ac7">
compiler/GHC/CmmToAsm/Config.hs
</a>
</li>
<li class="file-stats">
<a href="#ea29061dab1b843e0ea9294afc614998f3a8d08f">
compiler/GHC/CmmToAsm/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#ce4acbced40df8012ccc56db501549f835fb180b">
compiler/GHC/CmmToAsm/PIC.hs
</a>
</li>
<li class="file-stats">
<a href="#f71fa75baa7807186473f09c45a9ada1b72f4c6c">
compiler/GHC/CmmToAsm/PPC/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#99b1dfe8e0e3d0c174cd8552df7d2ae70d35800a">
compiler/GHC/CmmToAsm/PPC/RegInfo.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/e4cf1c5db6135dec71929358f9012d385a7441c1...0fa283769d3427b946dbe7567d24735388897ee1">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>