[Git][ghc/ghc][wip/T497] 32 commits: Add Generic tuple instances up to 15-tuple

Marge Bot gitlab at gitlab.haskell.org
Wed May 22 20:45:11 UTC 2019



 Marge Bot pushed to branch wip/T497 at Glasgow Haskell Compiler / GHC


Commits:
5eb94454 by Oleg Grenrus at 2019-05-10T20:26:28Z
Add Generic tuple instances up to 15-tuple

Why 15? Because we have Eq instances up to 15.

Metric Increase:
    T9630
    haddock.base

- - - - -
c7913f71 by Roland Senn at 2019-05-10T20:32:38Z
Fix bugs and documentation for #13456

- - - - -
bfcd986d by David Eichmann at 2019-05-10T20:38:57Z
Hadrian: programs need registered ghc-pkg libraries

In Hadrian, building programs (e.g. `ghc` or `haddock`) requires libraries located in the ghc-pkg package database i.e.

    _build/stage1/lib/x86_64-linux-ghc-8.9.0.20190430/libHSdeepseq-1.4.4.0-ghc8.9.0.20190430.so

Add the corresponding `need`s for these library files and the subsequent rules.

- - - - -
10f579ad by Ben Gamari at 2019-05-10T20:45:05Z
gitlab-ci: Disable cleanup job on Windows

As discussed in the Note, we now have a cron job to handle this and the
cleanup job itself is quite fragile.

[skip ci]

- - - - -
6f07f828 by Kevin Buhr at 2019-05-10T20:51:11Z
Add regression test case for old issue #493

- - - - -
4e25bf46 by Giles Anderson at 2019-05-13T23:01:52Z
Change GHC.hs to Packages.hs in Hadrian user-settings.md

... "all packages that are currently built as part of the GHC are
defined in src/Packages.hs"

- - - - -
357be128 by Kevin Buhr at 2019-05-14T20:41:19Z
Add regression test for old parser issue #504

- - - - -
015a21b8 by John Ericson at 2019-05-14T20:41:19Z
hadrian: Make settings stage specific

- - - - -
f9e4ea40 by John Ericson at 2019-05-14T20:41:19Z
Dont refer to `cLeadingUnderscore` in test

Can't use this config entry because it's about to go away

- - - - -
e529c65e by John Ericson at 2019-05-14T20:41:19Z
Remove all target-specific portions of Config.hs

1. If GHC is to be multi-target, these cannot be baked in at compile
   time.

2. Compile-time flags have a higher maintenance than run-time flags.

3. The old way makes build system implementation (various bootstrapping
   details) with the thing being built. E.g. GHC doesn't need to care
   about which integer library *will* be used---this is purely a crutch
   so the build system doesn't need to pass flags later when using that
   library.

4. Experience with cross compilation in Nixpkgs has shown things work
   nicer when compiler's can *optionally* delegate the bootstrapping the
   package manager. The package manager knows the entire end-goal build
   plan, and thus can make top-down decisions on bootstrapping. GHC can
   just worry about GHC, not even core library like base and ghc-prim!

- - - - -
5cf8032e by Oleg Grenrus at 2019-05-14T20:41:19Z
Update terminal title while running test-suite

Useful progress indicator even when `make test VERBOSE=1`,
and when you do something else, but have terminal title visible.

- - - - -
c72c369b by Vladislav Zavialov at 2019-05-14T20:41:19Z
Add a minimized regression test for #12928

- - - - -
a5fdd185 by Vladislav Zavialov at 2019-05-14T20:41:19Z
Guard CUSKs behind a language pragma

GHC Proposal #36 describes a transition plan away from CUSKs and to
top-level kind signatures:

1. Introduce a new extension, -XCUSKs, on by default, that detects CUSKs
   as they currently exist.
2. We turn off the -XCUSKs extension in a few releases and remove it
   sometime thereafter.

This patch implements phase 1 of this plan, introducing a new language
extension to control whether CUSKs are enabled. When top-level kind
signatures are implemented, we can transition to phase 2.

- - - - -
684dc290 by Vladislav Zavialov at 2019-05-14T20:41:19Z
Restore the --coerce option in 'happy' configuration

happy-1.19.10 has been released with a fix for --coerce in the presence
of higher rank types. This should result in about 10% performance
improvement in the parser.

- - - - -
a416ae26 by Alp Mestanogullari at 2019-05-14T20:41:20Z
Hadrian: 'need' source files for various docs in Rules.Documentation

Previously, changing one of the .rst files from the user guide would not cause
the user guide to be rebuilt. This patch take a first stab at declaring the
documentation source files that our documentation rules depend on, focusing
on the .rst files only for now.

We eventually might want to rebuild docs when we, say, change the haddock style
file, but this level of tracking isn't really necessary for now.

This fixes #16645.

- - - - -
7105fb66 by Ben Gamari at 2019-05-16T16:47:59Z
rts: Explicit state that CONSTR tag field is zero-based

This was a bit unclear as we use both one-based and zero-based
tags in GHC.

[skip ci]
- - - - -
5bb80cf2 by David Eichmann at 2019-05-20T14:41:55Z
Improve test runner logging when calculating performance metric baseline #16662

We attempt to get 75 commit hashes via `git log`, but this only gave 10
hashes in a CI run (see #16662). Better logging may help solve this
error if it occurs again in the future.

- - - - -
b46efa2b by David Eichmann at 2019-05-20T18:45:56Z
Recalculate Performance Test Baseline T9630 #16680

Metric Decrease:
    T9630

- - - - -
54095bbd by Takenobu Tani at 2019-05-21T20:54:00Z
users-guide: Fix directive errors on 8.10

The following sections are not displayed due to a directive error:

  * -Wunused-record-wildcards
  * -Wredundant-record-wildcards

I changed the location of the `since` directive.

[skip ci]

- - - - -
8fc654c3 by David Eichmann at 2019-05-21T20:57:37Z
Include CPP preprocessor dependencies in -M output

Issue #16521

- - - - -
0af519ac by David Eichmann at 2019-05-21T21:01:16Z
Refactor Libffi and RTS rules

This removes a hack that copies libffi files to the rts
build directory. This was done in a libffi rule, but now
an rts rule correctly needs and copies the relevant
files from the libffi build dir to the rts build dir.

Issues: #16272 #16304

- - - - -
9342b1fa by Kirill Elagin at 2019-05-21T21:04:54Z
users-guide: Fix -rtsopts default
- - - - -
d0142f21 by Javran Cheng at 2019-05-21T21:08:29Z
Fix doc for Data.Function.fix.

Doc-only change.

- - - - -
ddd905b4 by Shayne Fletcher at 2019-05-21T21:12:07Z
Update resolver for for happy 1.19.10

- - - - -
e32c30ca by Alp Mestanogullari at 2019-05-21T21:15:45Z
distrib/configure.ac.in: remove mention to 'settings', since settings.in is gone

Otherwise, when `./configure`ing a GHC bindist, produced by either Make or
Hadrian, we would try to generate the `settings` file from the `settings.in`
template that we used to have around but which has been gone since d37d91e9.
That commit generates the settings file using the build systems instead, but
forgot to remove this mention to the `settings` file.

- - - - -
4a6c8436 by Ryan Scott at 2019-05-21T21:19:22Z
Fix #16666 by parenthesizing contexts in Convert

Most places where we convert contexts in `Convert` are actually in
positions that are to the left of some `=>`, such as in superclasses
and instance contexts. Accordingly, these contexts need to be
parenthesized at `funPrec`. To accomplish this, this patch changes
`cvtContext` to require a precedence argument for the purposes of
calling `parenthesizeHsContext` and adjusts all `cvtContext` call
sites accordingly.

- - - - -
c32f64e5 by Ben Gamari at 2019-05-21T21:23:01Z
gitlab-ci: Allow Windows Hadrian build to fail

Due to #16574.
- - - - -
412a1f39 by Ben Gamari at 2019-05-21T21:23:01Z
Update .gitlab-ci.yml
- - - - -
0dc79856 by Julian Leviston at 2019-05-22T00:55:44Z
Allow for multiple linker instances. Fixes Haskell portion of #3372.

- - - - -
21272670 by Michael Sloan at 2019-05-22T20:37:57Z
Have GHCi use object code for UnboxedTuples modules #15454

The idea is to automatically enable -fobject-code for modules that use
UnboxedTuples, along with all the modules they depend on. When looking
into how to solve this, I was pleased to find that there was already
highly similar logic for enabling code generation when -fno-code is
specified but TemplateHaskell is used.

The state before this patch was that if you used unboxed tuples then you
had to enable `-fobject-code` globally rather than on a per module
basis.

- - - - -
ddae344e by Michael Sloan at 2019-05-22T20:41:31Z
Use datatype for unboxed returns when loading ghc into ghci

See #13101 and #15454

- - - - -
78c3f330 by Kevin Buhr at 2019-05-22T20:45:08Z
Add regression test for old Word32 arithmetic issue (#497)

- - - - -


30 changed files:

- .gitlab-ci.yml
- aclocal.m4
- compiler/basicTypes/UniqSupply.hs
- compiler/cmm/CLabel.hs
- compiler/coreSyn/CorePrep.hs
- compiler/deSugar/DsForeign.hs
- compiler/ghc.cabal.in
- compiler/ghc.mk
- compiler/ghci/Debugger.hs
- compiler/ghci/Linker.hs
- + compiler/ghci/LinkerTypes.hs
- compiler/hsSyn/Convert.hs
- compiler/hsSyn/HsDecls.hs
- compiler/llvmGen/LlvmCodeGen/Base.hs
- compiler/main/CodeOutput.hs
- compiler/main/DriverMkDepend.hs
- compiler/main/DriverPipeline.hs
- compiler/main/DynFlags.hs
- compiler/main/GhcMake.hs
- compiler/main/HscMain.hs
- compiler/main/HscTypes.hs
- compiler/main/InteractiveEval.hs
- compiler/main/SysTools.hs
- compiler/nativeGen/AsmCodeGen.hs
- compiler/nativeGen/PIC.hs
- compiler/nativeGen/RegAlloc/Linear/State.hs
- compiler/rename/RnSource.hs
- compiler/typecheck/TcTyClsDecls.hs
- distrib/configure.ac.in
- docs/users_guide/8.10.1-notes.rst


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/compare/d600116c89e2fa01b825d4e8cdcedd04b1cb0712...78c3f3305e173c7667ffb47b97ff0ecacc279fe5

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/compare/d600116c89e2fa01b825d4e8cdcedd04b1cb0712...78c3f3305e173c7667ffb47b97ff0ecacc279fe5
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/20190522/4a46e2b0/attachment-0001.html>


More information about the ghc-commits mailing list