<!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>
Sven Tennie pushed to branch wip/ghc-debug
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/9f66fdf69b7bcdacbfc46e636668ad0fe509b1b6">9f66fdf6</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-08-14T15:50:34-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Drop --io-manager flag from testsuite configuration
This is no longer necessary as there are now dedicated testsuite ways
which run tests with WinIO.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/55fd1dc55990623dcf3b2e6143e766242315d757">55fd1dc5</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-08-14T15:51:10-04:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">llvm-targets: Add i686 targets
Addresses #18422.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/4ac72b66281f6fbc863606921467c96a77e90d0f">4ac72b66</a></strong>
<div>
<span>by Matthew Pickering</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Implement ghc-debug API (#18405)
There are four components to this patch which make it possible to
implement `ghc-debug`.
1. Add four new functions to the RtsAPI.
* rts_pause and rts_unpause allow an external process to completely
pause and unpause the RTS.
* rts_listThreads and rts_listMiscRoots are used to find the current
roots of the garbage collector.
These changes also mean that `Task.h` is exposed to the user.
2. Generalise the `ghc-heap` API so that raw `Word`s can be returned
rather than actual objects. This is necessary when trying to decode
closures on an external process because the pointers in such closures
are correct for the internal rather than external process. If you used
the previous API then you would get a segfault as the garbage collector
would try to traverse into these nonsensical branches.
```
-- before
getClosureData :: a -> IO Closure
-- after
getClosureDataX :: (forall c . c -> IO (Ptr StgInfoTable, [Word], [b]))
-> a -> IO (GenClosure b)
```
For the normal case `b` is instantiated to `Box`, which contains a
pointer to a heap object.
```
data Box = Box a
-- GenClosure Box
```
For `ghc-debug` we instead just take the word of the address as we have
to explicitly interpret it on the external process.
```
GenClosure Word
```
3. Support for decoding `TSO` and `STACK` closures is partially
implemented. There is still quite a bit of work to do to finish both but
these at least allow us to make some more progress.
4. findPtr is generalised to take a callback argument. This means that
its result can be communicated to the debugger rather than just printing
out the result. The debugger has a function which invokes `findPtr` and
passes a callback which sends the result over a socket.
Co-authored-by: Ben Gamari <ben@smart-cactus.org>
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/91057d888c6f5afcdaf1befe666a1f1afa0b84f0">91057d88</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Decode more StgTSO and StgStack fields (#18405)
Use hsc2hs to get an understandable and stable mapping from the C
structs to Haskell.
It's important to keep StgTSO and StgStack decoding downwards
compatible. This is especially needed for hadrian/ghci.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/fae266ceab7c799d4765a22ef11847fe1df97128">fae266ce</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add test for StgTSO decoding (#18405)
This makes sure ghc-heap decodes StgTSO and StgStack correctly.
To assert - otherwise dynamic - properties, a new, non-running TSO is
created in create_tso() (create_tso.c).
size is renamed to stack_size to use a dedicated type.
size was already defined as a HalfWord in GenClosure, which is
only equivalent to Word32 on 64bit architectures.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/03bd641616e7fcab681eed5b7b56af2e3b8efc5b">03bd6416</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add documentation to ghc-debug functions (#18405)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5a96f25dc3c1ecfd6aa91b9bf815b9d557ec6f50">5a96f25d</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Adjust type of getClosureX to type of getClosureDataX (#18405)
After a rebase the compiler complained:
libraries/ghc-heap/GHC/Exts/Heap.hs:89:23: error:
• Couldn't match type: a -> IO (Ptr StgInfoTable, [Word], [b])
with: forall c. c -> IO (Ptr StgInfoTable, [Word], [b])
Expected: (forall c. c -> IO (Ptr StgInfoTable, [Word], [b]))
-> a -> IO (GenClosure b)
Actual: (a -> IO (Ptr StgInfoTable, [Word], [b]))
-> a -> IO (GenClosure b)
• In the expression: getClosureX
In an equation for ‘getClosureDataX’: getClosureDataX = getClosureX
In the instance declaration for ‘HasHeapRep a’
• Relevant bindings include
getClosureDataX :: (forall c.
c -> IO (Ptr StgInfoTable, [Word], [b]))
-> a -> IO (GenClosure b)
(bound at libraries/ghc-heap/GHC/Exts/Heap.hs:89:5)
|
89 | getClosureDataX = getClosureX
| ^^^^^^^^^^^
)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/93f49862fccca191aa064b25072bf284f5bf991c">93f49862</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add test for rts_pause and rts_unpause (#18405)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/9368ddfe3ace1aca7fdc4415a515ef6b155b2d3d">9368ddfe</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add test list_threads_and_misc_roots (#18405)
It uses rts_listThreads() and rts_listMiscRoots().
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/c4a4efddc957a910aea64dd5f61999cb0b9c40c4">c4a4efdd</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Introduce rts_isPaused() (#18405)
Some operations are only save when the RTS is paused. This predicate
helps to make such checks.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1f0ae63b156374e26d225dcdae97c7918ba63469">1f0ae63b</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Decode CostCentreStacks, CostCentres and InfoTables (#18405)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8059d20596af7ebee9a39ea3d1a00e75fbc041d3">8059d205</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use cache and loop breakers for CostCentre, CostCentreStack and IndexTable decoding (#18405)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/aa1d6ac3ab73b3540ec8262c671e055e021681c5">aa1d6ac3</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Cleanup
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/9083b8787fe953e0bceb5631e01121eef75d149a">9083b878</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Query caches once, not twice
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2d5ce49aa10153fe90952d26e4465195f5a8787f">2d5ce49a</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix Haddock for EndTSOQueue
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/1a303bbb46f111d355c2e89506dd8d6b4da93b37">1a303bbb</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Run prof_info test only in prof_ways (#18405)
That's the required way for collecting PROFILING data (e.g.
CostCentres).
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/044af0f59fe97b316e51a28abcf223667208e21b">044af0f5</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Skip WIP test
(Red on CI)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/88b56eae5f92e8bb772737c400416dd64a1869e9">88b56eae</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add missing module to ghc-heap.cabal
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0f6c75f4ac51258f11bb9a2b6e9ccaa50824be85">0f6c75f4</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Rearrange #ifdef with GHC version
This prevents some "unused" warnings.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8144ad9e84fe257ed98a65c150f72f763d7511ec">8144ad9e</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix cpp redefinition warnings
With --Werror this made the build fail.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/6cc475af62d720390033abc32e624ae73cbc0ade">6cc475af</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add dummy import for PeekProfInfo_ProfilingEnabled for non-profiled builds
This circumvents #15197. Otherwise PeekProfInfo_ProfilingEnabled
wouldn't be available for make-based builds.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/248afdea9b2d22719e5adc45c18673cebf1c0d72">248afdea</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add assertions to prof_info test (#18405)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/75d9d2c55cae13cad1f6b99f370b465a18175ab7">75d9d2c5</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix types in tests
Use `Ptr ()` instead of `Word` to communicate that addresses/pointers
are meant.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3eed7e513058e0d9be9c2dce9d2c02343c206f37">3eed7e51</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Cleanup
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ffa9b5775c576e31880e10ce82266e4f80bbee48">ffa9b577</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Introduce LiftedClosure
This is a representation for closures that do not have a represantation
in the Haskell language. I.e. things like TSOs.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0960d594168e00b8cca9acb457e907822b48f341">0960d594</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix prof_info test
Line number of self defined cost centre changed.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f0fe17f21c86a5206a3138d23d48b3b787f3ef67">f0fe17f2</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Expect stack_marking starting from GHC 8.10
This field was introduced with GHC 8.10.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/9aac043fc730612c7aa03bc632a1d19865e3164f">9aac043f</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add WhatNext, WhyBlocked and TsoFlags
Additionally extract TestUtils with common test functions.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/941a9990ed044af84182f0a9857ccdd8b2937c40">941a9990</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Parse TSO flags
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/36b4f8a358a0e8ad69b90e9929e04be458518b85">36b4f8a3</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Cache only CostCentres during ProfInfo decoding
Looks like caches for CostCentreStacks and IndexTables are not needed.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/705912c74658037ac6b264bbf93c8cff5f8178fd">705912c7</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix warning
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/4df1a44df87a653cd6061a0e918d266740658a78">4df1a44d</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">END_TSO_QUEUE is not a closure type on it's own
Indeed it's a CONSTR_NOCAF.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3a46867311bf3f839f68b1a8842a8f4881bba9db">3a468673</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Delete unused function
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/a0bd62e4035164354a5f9049b4f8161891ba2995">a0bd62e4</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-17T08:32:48+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Rename boundTaskExiting and getTask (#18405)
Both are directly related to myTask, which the new names now reflect.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/26f2302e80c4d92f344997b120af5dba0c2fa4f9">26f2302e</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2020-08-18T09:21:07+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Mark unsafe accesses (#18405)
StgTSO and StgStack are very dynamic by nature. Accesses to outdated
pointers lead to segmentation faults or absolutely wrong results.
So, make sure (by naming) that the users nows about these facts.
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#5c66928780aaad0eb5888511dc4b0b08492c69fa">
compiler/GHC/ByteCode/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#efe7444c09eed0fdaa83e6904e6328fb435620bf">
compiler/GHC/Runtime/Interpreter.hs
</a>
</li>
<li class="file-stats">
<a href="#40f83a2cddcbc1f8190b0551eb572ccf4ea88cc9">
includes/Rts.h
</a>
</li>
<li class="file-stats">
<a href="#f7bfc5e15e7497f29b41f6df46865c151a07955d">
includes/RtsAPI.h
</a>
</li>
<li class="file-stats">
<a href="#99893b7261774f87ac87fca950780de32a092668">
<span class="new-file">
+
includes/rts/Task.h
</span>
</a>
</li>
<li class="file-stats">
<a href="#6ee44ce9461008fa244623eb266f78f556eab112">
includes/rts/storage/Heap.h
</a>
</li>
<li class="file-stats">
<a href="#06b370ff84e63d5f9d23a0e79846fa802f93dc44">
libraries/ghc-heap/GHC/Exts/Heap.hs
</a>
</li>
<li class="file-stats">
<a href="#8d32d739fb09a31d87dc934186376661b2ad6ce1">
libraries/ghc-heap/GHC/Exts/Heap/ClosureTypes.hs
</a>
</li>
<li class="file-stats">
<a href="#314cd94f633689e4a18e0ccd7ff4324b0a58ac17">
libraries/ghc-heap/GHC/Exts/Heap/Closures.hs
</a>
</li>
<li class="file-stats">
<a href="#955a0cec60bbe64acc126decf9d86f934a076fad">
<span class="new-file">
+
libraries/ghc-heap/GHC/Exts/Heap/FFIClosures.hsc
</span>
</a>
</li>
<li class="file-stats">
<a href="#f8c89d5221aedc242eebbc2c764f8e5234c112cc">
<span class="new-file">
+
libraries/ghc-heap/GHC/Exts/Heap/ProfInfo/PeekProfInfo_ProfilingDisabled.hsc
</span>
</a>
</li>
<li class="file-stats">
<a href="#47c79b2e9cd3039de871866acd290eb3582b2804">
<span class="new-file">
+
libraries/ghc-heap/GHC/Exts/Heap/ProfInfo/PeekProfInfo_ProfilingEnabled.hsc
</span>
</a>
</li>
<li class="file-stats">
<a href="#96041b9a3dcd0d1c167bff80704bb9e49944488e">
<span class="new-file">
+
libraries/ghc-heap/GHC/Exts/Heap/ProfInfo/Types.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#3c777e23719c543518e2c3abba3bfccaaf5e4fcf">
<span class="new-file">
+
libraries/ghc-heap/GHC/Exts/Heap/Ptr/Utils.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#ac19c930d4b92f05bf72d56e69051aa9dda768d3">
libraries/ghc-heap/ghc-heap.cabal.in
</a>
</li>
<li class="file-stats">
<a href="#fa65ae997830b4920372dd3bb9ba68be117d777e">
<span class="new-file">
+
libraries/ghc-heap/tests/TestUtils.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#e7e177c17e4bf37dc865a39cde7a0ec9e1a33362">
libraries/ghc-heap/tests/all.T
</a>
</li>
<li class="file-stats">
<a href="#a1a274388cf6f872cf751e1b1303e10f77a40360">
<span class="new-file">
+
libraries/ghc-heap/tests/create_tso.c
</span>
</a>
</li>
<li class="file-stats">
<a href="#4bc3fcfa03933824b9e2571ebf4749f452015d9a">
<span class="new-file">
+
libraries/ghc-heap/tests/create_tso.h
</span>
</a>
</li>
<li class="file-stats">
<a href="#c805c26c0ac354f472155142f770fa502f8e772f">
<span class="new-file">
+
libraries/ghc-heap/tests/list_threads_and_misc_roots.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#a7ec2729a55e633ba395a16acda038a6d075afcd">
<span class="new-file">
+
libraries/ghc-heap/tests/list_threads_and_misc_roots_c.c
</span>
</a>
</li>
<li class="file-stats">
<a href="#11b067e604bf03cc9a48388a7e17e63b4bf73abc">
<span class="new-file">
+
libraries/ghc-heap/tests/list_threads_and_misc_roots_c.h
</span>
</a>
</li>
<li class="file-stats">
<a href="#93e0e613b76be12bf68ebce427873ca6f4cf6e51">
<span class="new-file">
+
libraries/ghc-heap/tests/parse_tso_flags.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#18aaf7d4e678a8c1da63612d2f2af919e3136af0">
<span class="new-file">
+
libraries/ghc-heap/tests/prof_info.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#5b5b439543cf197398612a3792ce3e362c519eab">
<span class="new-file">
+
libraries/ghc-heap/tests/tso_and_stack_closures.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#ed5b77135b8d6077d6f77541d166d7b8fe93f9de">
libraries/ghci/GHCi/Message.hs
</a>
</li>
<li class="file-stats">
<a href="#fdd34ceb84d7b95dccbd9172ce507eaea9b5abd4">
libraries/ghci/GHCi/Run.hs
</a>
</li>
<li class="file-stats">
<a href="#3038e2d06a896e58c8bd2f609694dfd16c75d8df">
llvm-targets
</a>
</li>
<li class="file-stats">
<a href="#7cd911ebab0f9f45be4a3d53fd5b4cb6cf96de6b">
rts/Heap.c
</a>
</li>
<li class="file-stats">
<a href="#1f366bc5cc9fea123d6a6ab6c25b1483994867d5">
rts/Printer.c
</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/78c049b6d52d6d01a6e9184c609a65c1041b8c3b...26f2302e80c4d92f344997b120af5dba0c2fa4f9">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>