[Git][ghc/ghc][wip/T18328] 14 commits: Use foldl' in unionManyUniqDSets

Simon Peyton Jones gitlab at gitlab.haskell.org
Thu Jun 18 14:42:28 UTC 2020



Simon Peyton Jones pushed to branch wip/T18328 at Glasgow Haskell Compiler / GHC


Commits:
9a9cc089 by Simon Jakobi at 2020-06-15T13:10:00-04:00
Use foldl' in unionManyUniqDSets

- - - - -
761dcb84 by Moritz Angermann at 2020-06-15T13:10:36-04:00
Load .lo as well.

Some archives contain so called linker objects, with the affectionate
.lo suffic.  For example the musl libc.a will come in that form.  We
still want to load those objects, hence we should not discard them and
look for .lo as well.  Ultimately we might want to fix this proerly by
looking at the file magic.

- - - - -
cf01477f by Vladislav Zavialov at 2020-06-15T13:11:20-04:00
User's Guide: KnownNat evidence is Natural

This bit of documentation got outdated after commit
1fcede43d2b30f33b7505e25eb6b1f321be0407f

- - - - -
d0dcbfe6 by Jan Hrček at 2020-06-16T20:36:38+02:00
Fix typos and formatting in user guide

- - - - -
56a9e95f by Jan Hrček at 2020-06-16T20:36:38+02:00
Resolve TODO

- - - - -
3e884d14 by Jan Hrček at 2020-06-16T20:36:38+02:00
Rename TcHoleErrors to GHC.Tc.Errors.Hole

- - - - -
d23fc678 by Stefan Schulze Frielinghaus at 2020-06-17T15:31:09-04:00
hadrian: Build with threaded runtime if available

See #16873.

- - - - -
0639dc10 by Sylvain Henry at 2020-06-17T15:31:53-04:00
T16190: only measure bytes_allocated

Just adding `{-# LANGUAGE BangPatterns #-}` makes the two other metrics
fluctuate by 13%.

- - - - -
4cab6897 by Adam Sandberg Ericsson at 2020-06-17T15:32:44-04:00
docs: fix formatting in users guide

- - - - -
eb8115a8 by Sylvain Henry at 2020-06-17T15:33:23-04:00
Move CLabel assertions into smart constructors (#17957)

It avoids using DynFlags in the Outputable instance of Clabel to check
assertions at pretty-printing time.

- - - - -
17d42a05 by Simon Peyton Jones at 2020-06-18T13:41:42+01:00
Make arityType deal with join points

As Note [Eta-expansion and join points] describes,
this patch makes arityType deal correctly with join points.
What was there before was not wrong, but yielded lower
arities than it could.

Fixes #18328

In base GHC this makes no difference to nofib.

        Program           Size    Allocs   Runtime   Elapsed  TotalMem
--------------------------------------------------------------------------------
         n-body          -0.1%     -0.1%     -1.2%     -1.1%      0.0%
--------------------------------------------------------------------------------
            Min          -0.1%     -0.1%    -55.0%    -56.5%      0.0%
            Max          -0.0%      0.0%    +16.1%    +13.4%      0.0%
 Geometric Mean          -0.0%     -0.0%    -30.1%    -31.0%     -0.0%

But it starts to make real difference when we land the change to the
way mkDupableAlts handles StrictArg, in fixing #13253 and friends.
I think this is because we then get more non-inlined join points.

- - - - -
f73eb0b6 by Simon Peyton Jones at 2020-06-18T15:40:03+01:00
Improve eta-expansion using ArityType

As #18355 shows, we were failing to preserve one-shot info when
eta-expanding.  It's rather easy to fix, by using ArityType more,
rather than just Arity.

This patch is important to suport the one-shot monad trick;
see #18202.

- - - - -
105df63a by Simon Peyton Jones at 2020-06-18T15:40:25+01:00
Use dumpStyle when printing inlinings

This just makes debug-printing consistent,
and more informative.

- - - - -
3c5a7056 by Simon Peyton Jones at 2020-06-18T15:41:07+01:00
Comments only

- - - - -


30 changed files:

- compiler/GHC/Cmm/CLabel.hs
- compiler/GHC/Core/Opt/Arity.hs
- compiler/GHC/Core/Opt/Simplify.hs
- compiler/GHC/Core/Opt/Simplify/Utils.hs
- compiler/GHC/StgToCmm/Closure.hs
- compiler/GHC/Tc/Instance/Class.hs
- compiler/GHC/Tc/Solver/Flatten.hs
- compiler/GHC/Types/Unique/DSet.hs
- docs/users_guide/8.12.1-notes.rst
- docs/users_guide/extending_ghc.rst
- docs/users_guide/exts/constrained_class_methods.rst
- docs/users_guide/exts/explicit_forall.rst
- docs/users_guide/exts/flexible_contexts.rst
- docs/users_guide/exts/gadt_syntax.rst
- docs/users_guide/exts/hex_float_literals.rst
- docs/users_guide/exts/instances.rst
- docs/users_guide/exts/nullary_type_classes.rst
- docs/users_guide/exts/primitives.rst
- docs/users_guide/exts/rank_polymorphism.rst
- docs/users_guide/exts/record_wildcards.rst
- docs/users_guide/exts/type_families.rst
- docs/users_guide/exts/type_literals.rst
- docs/users_guide/exts/undecidable_super_classes.rst
- docs/users_guide/profiling.rst
- docs/users_guide/using-warnings.rst
- docs/users_guide/win32-dlls.rst
- hadrian/build-cabal
- libraries/base/GHC/OverloadedLabels.hs
- rts/linker/LoadArchive.c
- testsuite/tests/perf/compiler/all.T


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/5bccde026a5476c321fc9d025de09e25b91adaa5...3c5a7056b8983a554ad1d2ea9d450ea9df1d9c35

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/5bccde026a5476c321fc9d025de09e25b91adaa5...3c5a7056b8983a554ad1d2ea9d450ea9df1d9c35
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20200618/4ec23152/attachment.html>


More information about the ghc-commits mailing list