1. 21 Mar, 2019 1 commit
    • jberryman's avatar
      Rough working LTO · 6f369534
      jberryman authored
      Very rough and hacky, with some hacks unnecessary but which I haven't
      taken the time to sort out yet.
      
      you need to make sure you have the lto plugin set up correctly, e.g.:
      
        $ cd /usr/lib/bfd-plugins/
        $ sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so .
      
      then do:
      
         $ export PATH=SHIMS_PATH:$PATH
         $ LD=gold  CC_STAGE0=gcc CC=gcc ./configure
         $ make
      
      You should adjust your path in the same way when building with this GHC,
      and you can do e.g.
      
        $ cabal new-build --disable-profiling --disable-library-profiling --with-compiler=your-ghc-source-tree/inplace/bin/ghc-stage2 --package-db=your-ghc-source-tree/inplace/lib/package.conf.d all
      
      You can see `-time` log in gcc shim file, play with recompilation
      options there.
      6f369534
  2. 15 Dec, 2018 1 commit
  3. 06 Dec, 2018 1 commit
    • Ben Gamari's avatar
      Bump iserv versions · bf074e3e
      Ben Gamari authored
      This fixes #15866, the original fix for which didn't merge cleanly to
      the stable branch.
      bf074e3e
  4. 24 Oct, 2018 1 commit
  5. 17 Oct, 2018 1 commit
  6. 05 Oct, 2018 1 commit
    • Tamar Christina's avatar
      Drop accidental write-attributes request · a2e3334c
      Tamar Christina authored
      Summary:
      The new filesystem code accidentally asks for write attributes
      permissions when doing read-only access.
      
      I believe this is what's causing the GHC 8.6.1 tarballs to fail
      when installed to a privileged location.
      I haven't been able to reproduce the issue yet, but this permission
      bit is wrong anyway.
      
      Test Plan: I'm still trying to workout how to test that this works,
      changing the permissions on the folder doesn't seem to reproduce
      the error on a tarball I made from before the change.
      
      Reviewers: bgamari, tdammers
      
      Reviewed By: bgamari
      
      Subscribers: tdammers, monoidal, rwbarton, carter
      
      GHC Trac Issues: #15667
      
      Differential Revision: https://phabricator.haskell.org/D5177
      
      (cherry picked from commit deceb21b)
      a2e3334c
  7. 16 Sep, 2018 1 commit
  8. 23 Aug, 2018 1 commit
    • Alec Theriault's avatar
      Explicitly tell 'getNameToInstances' mods to load · 18cb44df
      Alec Theriault authored
      Calculating which modules to load based on the InteractiveContext means
      maintaining a potentially very large GblRdrEnv.
      
      In Haddock's case, it is much cheaper (from a memory perspective) to
      just keep track of which modules interfaces we want loaded then hand
      these off explicitly to 'getNameToInstancesIndex'.
      
      Bumps haddock submodule.
      
      Reviewers: alexbiehl, bgamari
      
      Reviewed By: alexbiehl
      
      Subscribers: rwbarton, thomie, carter
      
      Differential Revision: https://phabricator.haskell.org/D5003
      
      (cherry picked from commit c971e119)
      18cb44df
  9. 09 Aug, 2018 1 commit
  10. 06 Aug, 2018 1 commit
  11. 02 Aug, 2018 1 commit
  12. 30 Jul, 2018 1 commit
    • Alan Zimmerman's avatar
      TTG typo: XFieldOcc should be XCFieldOcc · 10fa8041
      Alan Zimmerman authored
      In the following
      
        data FieldOcc pass = FieldOcc { extFieldOcc     :: XFieldOcc pass
                                      , rdrNameFieldOcc :: Located RdrName
                                         -- ^ See Note [Located RdrNames] in HsExpr
                                      }
      
          | XFieldOcc
              (XXFieldOcc pass)
      
      we are using XFieldOcc for both the extFieldOcc type and the extra constructor.
      
      The first one should be XCFieldOcc
      
      Updates haddock submodule
      closes #15386
      
      (cherry picked from commit 92695419)
      10fa8041
  13. 20 Jun, 2018 4 commits
  14. 19 Jun, 2018 2 commits
  15. 18 Jun, 2018 1 commit
  16. 14 Jun, 2018 2 commits
  17. 08 Jun, 2018 2 commits
  18. 05 Jun, 2018 1 commit
    • Ryan Scott's avatar
      Introduce DerivingVia · 8ed8b037
      Ryan Scott authored
      This implements the `DerivingVia` proposal put forth in
      https://github.com/ghc-proposals/ghc-proposals/pull/120.
      
      This introduces the `DerivingVia` deriving strategy. This is a
      generalization of `GeneralizedNewtypeDeriving` that permits the user
      to specify the type to `coerce` from.
      
      The major change in this patch is the introduction of the
      `ViaStrategy` constructor to `DerivStrategy`, which takes a type
      as a field. As a result, `DerivStrategy` is no longer a simple
      enumeration type, but rather something that must be renamed and
      typechecked. The process by which this is done is explained more
      thoroughly in section 3 of this paper
      ( https://www.kosmikus.org/DerivingVia/deriving-via-paper.pdf ),
      although I have inlined the relevant parts into Notes where possible.
      
      There are some knock-on changes as well. I took the opportunity to
      do some refactoring of code in `TcDeriv`, especially the
      `mkNewTypeEqn` function, since it was bundling all of the logic for
      (1) deriving instances for newtypes and
      (2) `GeneralizedNewtypeDeriving`
      into one huge broth. `DerivingVia` reuses much of part (2), so that
      was factored out as much as possible.
      
      Bumps the Haddock submodule.
      
      Test Plan: ./validate
      
      Reviewers: simonpj, bgamari, goldfire, alanz
      
      Subscribers: alanz, goldfire, rwbarton, thomie, mpickering, carter
      
      GHC Trac Issues: #15178
      
      Differential Revision: https://phabricator.haskell.org/D4684
      8ed8b037
  19. 03 Jun, 2018 1 commit
    • Tobias Dammers's avatar
      Handle abi-depends correctly in ghc-pkg · 1626fe60
      Tobias Dammers authored
      When inferring the correct abi-depends, we now look at all the package
      databases in the stack, up to and including the current one, because
      these are the ones that the current package can legally depend on. While
      doing so, we will issue warnings:
      
      - In verbose mode, we warn about every package that declares
        abi-depends:, whether we actually end up overriding them with the
        inferred ones or not ("possibly broken abi-depends").
      
      - Otherwise, we only warn about packages whose declared abi-depends
        does not match what we inferred ("definitely broken abi-depends").
      
      Reviewers: bgamari
      
      Reviewed By: bgamari
      
      Subscribers: rwbarton, thomie, carter
      
      GHC Trac Issues: #14381
      
      Differential Revision: https://phabricator.haskell.org/D4729
      1626fe60
  20. 02 Jun, 2018 3 commits
    • Ben Gamari's avatar
      rts: Rip out support for STM invariants · a122d4fd
      Ben Gamari authored
      This feature has some very serious correctness issues (#14310),
      introduces a great deal of complexity, and hasn't seen wide usage.
      Consequently we are removing it, as proposed in Proposal #77 [1]. This
      is heavily based on a patch from fryguybob.
      
      Updates stm submodule.
      
      [1] https://github.com/ghc-proposals/ghc-proposals/pull/77
      
      Test Plan: Validate
      
      Reviewers: erikd, simonmar, hvr
      
      Reviewed By: simonmar
      
      Subscribers: rwbarton, thomie, carter
      
      GHC Trac Issues: #14310
      
      Differential Revision: https://phabricator.haskell.org/D4760
      a122d4fd
    • Ben Gamari's avatar
      vectorise: Put it out of its misery · faee23bb
      Ben Gamari authored
      Poor DPH and its vectoriser have long been languishing; sadly it seems there is
      little chance that the effort will be rekindled. Every few years we discuss
      what to do with this mass of code and at least once we have agreed that it
      should be archived on a branch and removed from `master`. Here we do just that,
      eliminating heaps of dead code in the process.
      
      Here we drop the ParallelArrays extension, the vectoriser, and the `vector` and
      `primitive` submodules.
      
      Test Plan: Validate
      
      Reviewers: simonpj, simonmar, hvr, goldfire, alanz
      
      Reviewed By: simonmar
      
      Subscribers: goldfire, rwbarton, thomie, mpickering, carter
      
      Differential Revision: https://phabricator.haskell.org/D4761
      faee23bb
    • admock's avatar
      Add llvm-target for powerpc64le-unknown-linux · 13a86606
      admock authored
      Reviewers: bgamari
      
      Reviewed By: bgamari
      
      Subscribers: rwbarton, thomie, carter
      
      GHC Trac Issues: #15212
      
      Differential Revision: https://phabricator.haskell.org/D4765
      13a86606
  21. 31 May, 2018 1 commit
  22. 30 May, 2018 1 commit
  23. 29 May, 2018 1 commit
  24. 22 May, 2018 1 commit
  25. 21 May, 2018 1 commit
  26. 14 May, 2018 2 commits
  27. 13 May, 2018 1 commit
    • Sylvain Henry's avatar
      Refactor LitString · 7c665f9c
      Sylvain Henry authored
      Refactor LitString so that the string length is computed at most once
      and then stored.
      
      Also remove strlen and memcmp wrappers (it seems like they were a
      workaround for a very old GCC when using -fvia-C).
      
      Bumps haddock submodule.
      
      Reviewers: bgamari, dfeuer, nickkuk
      
      Reviewed By: bgamari, nickkuk
      
      Subscribers: nickkuk, dfeuer, thomie, carter
      
      Differential Revision: https://phabricator.haskell.org/D4630
      7c665f9c
  28. 27 Apr, 2018 1 commit
    • Alan Zimmerman's avatar
      TTG : complete for balance of hsSyn AST · c3823cba
      Alan Zimmerman authored
      Summary:
      - remove PostRn/PostTc fields
      - remove the HsVect In/Out distinction for Type, Class and Instance
      - remove PlaceHolder in favour of NoExt
      - Simplify OutputableX constraint
      
      Updates haddock submodule
      
      Test Plan: ./validate
      
      Reviewers: goldfire, bgamari
      
      Subscribers: goldfire, thomie, mpickering, carter
      
      Differential Revision: https://phabricator.haskell.org/D4625
      c3823cba
  29. 19 Apr, 2018 1 commit
  30. 13 Apr, 2018 1 commit
    • Alan Zimmerman's avatar
      TTG for HsBinds and Data instances Plan B · b1386942
      Alan Zimmerman authored
      Summary:
      - Add the balance of the TTG extensions for hsSyn/HsBinds
      
      - Move all the (now orphan) data instances into hsSyn/HsInstances and
      use TTG Data instances Plan B
      https://ghc.haskell.org/trac/ghc/wiki/ImplementingTreesThatGrow/Instances#PLANB
      
      Updates haddock submodule.
      
      Illustrative numbers
      
      Compiling HsInstances before using Plan B.
      
      Max residency ~ 5G
      <<ghc: 629,864,691,176 bytes, 5300 GCs,
             321075437/1087762592 avg/max bytes residency (23 samples),
             2953M in use, 0.000 INIT (0.000 elapsed),
             383.511 MUT (384.986 elapsed), 37.426 GC (37.444 elapsed) :ghc>>
      
      Using Plan B
      
      Max residency 1.1G
      
      <<ghc: 78,832,782,968 bytes, 2884 GCs,
             222140352/386470152 avg/max bytes residency (34 samples),
             1062M in use, 0.001 INIT (0.001 elapsed),
             56.612 MUT (62.917 elapsed), 32.974 GC (32.923 elapsed) :ghc>>
      
      Test Plan: ./validate
      
      Reviewers: shayan-najd, goldfire, bgamari
      
      Subscribers: goldfire, thomie, mpickering, carter
      
      Differential Revision: https://phabricator.haskell.org/D4581
      b1386942
  31. 09 Apr, 2018 1 commit