Skip to content
Snippets Groups Projects
  1. Jul 17, 2019
    • John Ericson's avatar
      Create {Int,Word}32Rep · 0a9b77b8
      John Ericson authored and Marge Bot's avatar Marge Bot committed
      This prepares the way for making Int32# and Word32# the actual size they
      claim to be.
      
      Updates binary submodule for (de)serializing the new runtime reps.
      0a9b77b8
  2. Jul 14, 2019
  3. Jul 13, 2019
  4. Jul 10, 2019
  5. Jul 05, 2019
  6. Jul 04, 2019
  7. Jul 03, 2019
  8. Jul 02, 2019
  9. Jun 27, 2019
  10. Jun 26, 2019
  11. Jun 22, 2019
    • Ben Gamari's avatar
      ghci: Don't rely on resolution of System.IO to base module · 655c6e26
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      Previously we would hackily evaluate a textual code snippet to compute
      actions to disable I/O buffering and flush the stdout/stderr handles.
      This broke in a number of ways (#15336, #16563).
      
      Instead we now ship a module (`GHC.GHCi.Helpers`) with `base` containing
      the needed actions. We can then easily refer to these via `Orig` names.
      655c6e26
  12. Jun 21, 2019
  13. Jun 20, 2019
  14. Jun 18, 2019
  15. Jun 16, 2019
  16. Jun 15, 2019
  17. Jun 14, 2019
    • Andrew Martin's avatar
      Implement the -XUnliftedNewtypes extension. · effdd948
      Andrew Martin authored and Marge Bot's avatar Marge Bot committed
      GHC Proposal: 0013-unlifted-newtypes.rst
      Discussion: https://github.com/ghc-proposals/ghc-proposals/pull/98
      
      
      Issues: #15219, #1311, #13595, #15883
      Implementation Details:
        Note [Implementation of UnliftedNewtypes]
        Note [Unifying data family kinds]
        Note [Compulsory newtype unfolding]
      
      This patch introduces the -XUnliftedNewtypes extension. When this
      extension is enabled, GHC drops the restriction that the field in
      a newtype must be of kind (TYPE 'LiftedRep). This allows types
      like Int# and ByteArray# to be used in a newtype. Additionally,
      coerce is made levity-polymorphic so that it can be used with
      newtypes over unlifted types.
      
      The bulk of the changes are in TcTyClsDecls.hs. With -XUnliftedNewtypes,
      getInitialKind is more liberal, introducing a unification variable to
      return the kind (TYPE r0) rather than just returning (TYPE 'LiftedRep).
      When kind-checking a data constructor with kcConDecl, we attempt to
      unify the kind of a newtype with the kind of its field's type. When
      typechecking a data declaration with tcTyClDecl, we again perform a
      unification. See the implementation note for more on this.
      
      Co-authored-by: Richard Eisenberg's avatarRichard Eisenberg <rae@richarde.dev>
      effdd948
  18. Jun 13, 2019
  19. Jun 12, 2019
  20. Jun 11, 2019
    • Alp Mestanogullari's avatar
      Refine the GHCI macro into HAVE[_{INTERNAL, EXTERNAL}]_INTERPRETER · 39f50bff
      Alp Mestanogullari authored and Marge Bot's avatar Marge Bot committed
      As discussed in #16331, the GHCI macro, defined through 'ghci' flags
      in ghc.cabal.in, ghc-bin.cabal.in and ghci.cabal.in, is supposed to indicate
      whether GHC is built with support for an internal interpreter, that runs in
      the same process. It is however overloaded in a few places to mean
      "there is an interpreter available", regardless of whether it's an internal
      or external interpreter.
      
      For the sake of clarity and with the hope of more easily being able to
      build stage 1 GHCs with external interpreter support, this patch splits
      the previous GHCI macro into 3 different ones:
      
      - HAVE_INTERNAL_INTERPRETER: GHC is built with an internal interpreter
      - HAVE_EXTERNAL_INTERPRETER: GHC is built with support for external interpreters
      - HAVE_INTERPRETER: HAVE_INTERNAL_INTERPRETER || HAVE_EXTERNAL_INTERPRETER
      39f50bff
    • Ben Gamari's avatar
      ghc-heap: Add closure_size_noopt test · e5d275f4
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      This adds a new test, only run in the `normal` way, to verify the size
      of FUNs and PAPs.
      e5d275f4
    • Ben Gamari's avatar
      testsuite: Fix and extend closure_size test · 2f945086
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      This was previously broken in several ways. This is fixed and it also
      now tests arrays. Unfortunately I was unable to find a way to continue
      testing PAP and FUN sizes; these simply depend too much upon the
      behavior of the simplifier.
      
      I also tried to extend this to test non-empty arrays as well but
      unfortunately this was non-trivial as the array card size constant isn't
      readily available from haskell.
      
      Fixes #16531.
      2f945086
  21. Jun 10, 2019
    • Ben Gamari's avatar
      base: Mark CPUTime001 as fragile · 1a3420ca
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      As noted in #16224, CPUTime001 has been quite problematic, reporting
      non-monotonic timestamps in CI. Unfortunately I've been unable to
      reproduce this locally.
      1a3420ca
Loading