1. 03 Sep, 2015 6 commits
  2. 02 Sep, 2015 15 commits
    • thomie's avatar
      Testsuite: delete dead code · bd16e0bc
      thomie authored
    • thomie's avatar
      Testsuite: by default run all tests for a single way · c43c8e2c
      thomie authored
      `make test` now runs all tests for a single way only. Use `make slowtest` to
      get the previous behaviour (i.e. run all tests for all ways).
      The intention is to use this new `make test` setting for Phabricator, as
      a reasonable compromise between `make fasttest` (what it previously
      used) and a fullblown `make slowtest` (which runs all tests for all
      See Note [validate and testsuite speed] in toplevel Makefile.
      Differential Revision: https://phabricator.haskell.org/D1178
    • Eric Seidel's avatar
      Fix some tests that were broken by D861 · 32a9eada
      Eric Seidel authored
      I didn't realize that `./validate` does not run every test :(
      Test Plan: ./validate --slow
      Update submodule hpc.
      Differential Revision: https://phabricator.haskell.org/D1204
    • thomie's avatar
      Testsuite: mark 4 tests expect_broken_for(#10712, opt_ways) · 3b233793
      thomie authored
      Please revert when #10712 is fixed.
    • thomie's avatar
      Testsuite: update expected output · e0b3ff0f
      thomie authored
    • thomie's avatar
      Testsuite: don't warn about missing specialisations · 5d7a873a
      thomie authored
      They can only occur with `-O`, but we want tests to produce the same
      output for all test ways.
      This brings us closer to passing the complete testsuite.
      Differential Revision: https://phabricator.haskell.org/D1203
    • Ben Gamari's avatar
      stm: Fix test case · 3cc8f075
      Ben Gamari authored
      Updates stm submodule.
    • Simon Peyton Jones's avatar
      Improve the error messages for class instance errors · 28ac9d31
      Simon Peyton Jones authored
      Summary: See Note [Displaying potential instances].
      Reviewers: austin
      Subscribers: KaneTW, thomie
      Differential Revision: https://phabricator.haskell.org/D1176
    • spinda's avatar
      Expand declaration QQs first (#10047) · c8f623e3
      spinda authored
      Declaration QuasiQuoters do not cause a group split like $(...)
      splices, and are run and expanded before other declarations in
      the group.
      Resolves the lingering issue with #10047, and fixes broken tests
      qq007 and qq008.
      Test Plan: validate
      Reviewers: goldfire, austin, bgamari
      Reviewed By: bgamari
      Subscribers: goldfire, simonpj, thomie, spinda
      Differential Revision: https://phabricator.haskell.org/D1199
      GHC Trac Issues: #10047
    • spinda's avatar
      Allow annotations though addTopDecls (#10486) · ba5554ec
      spinda authored
      addTopDecls restricts what declarations it can be used to add. Adding
      annotations via this method works fine with no special changes apart
      from adding AnnD to the declaration whitelist.
      Test Plan: validate
      Reviewers: austin, goldfire, bgamari
      Reviewed By: bgamari
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1201
      GHC Trac Issues: #10486
    • Michael Snoyman's avatar
      Use a response file for linker command line arguments #10777 · 296bc70b
      Michael Snoyman authored
      On Windows, we're constrained to 32k bytes total for command line
      arguments.  When building large projects, this limit can be exceeded.
      This patch changes GHC to always use response files for linker
      arguments, a feature first used by Microsoft compilers and added to GCC
      (over a decade ago).
      Alternatives here include:
      * Only use this method on Windows systems
      * Check the length of the command line arguments and use that to decide
        whether to use this method
      I did not pursue either of these, as I believe it would make the patch
      more likely to break in less tested situations.
      Test Plan:
      Confirm that linking still works in general. Ideally: compile a very
      large project on Windows with this patch. (I am attempting to do that
      myself now, but having trouble getting the Windows build tool chain up
      and running.)
      Reviewers: goldfire, hvr, rwbarton, austin, thomie, bgamari, Phyx
      Reviewed By: thomie, bgamari, Phyx
      Subscribers: erikd, awson, #ghc_windows_task_force, thomie
      Differential Revision: https://phabricator.haskell.org/D1158
      GHC Trac Issues: #8596, #10777
    • Matthew Pickering's avatar
      Add test for updating a record with existentially quantified fields. · ff9432f6
      Matthew Pickering authored
      Test Plan: ./validate
      Reviewers: austin, bgamari
      Reviewed By: bgamari
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1193
    • Ben Gamari's avatar
      Fix trac #10413 · 010e1878
      Ben Gamari authored
      Test Plan: Validate.
      Reviewers: austin, tibbe, bgamari
      Reviewed By: tibbe, bgamari
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1194
      GHC Trac Issues: #10413
    • Eric Seidel's avatar
      Use IP based CallStack in error and undefined · 6740d70d
      Eric Seidel authored
      This patch modifies `error`, `undefined`, and `assertError` to use
      implicit call-stacks to provide better error messages to users.
      There are a few knock-on effects:
      - `GHC.Classes.IP` is now wired-in so it can be used in the wired-in
        types for `error` and `undefined`.
      - `TysPrim.tyVarList` has been replaced with a new function
        `TysPrim.mkTemplateTyVars`. `tyVarList` made it easy to introduce
        subtle bugs when you need tyvars of different kinds. The naive
        tv1 = head $ tyVarList kind1
        tv2 = head $ tyVarList kind2
        would result in `tv1` and `tv2` sharing a `Unique`, thus substitutions
        would be applied incorrectly, treating `tv1` and `tv2` as the same
        tyvar. `mkTemplateTyVars` avoids this pitfall by taking a list of kinds
        and producing a single tyvar of each kind.
      - The types `GHC.SrcLoc.SrcLoc` and `GHC.Stack.CallStack` now live in
      - The type `GHC.Exception.ErrorCall` has a new constructor
        `ErrorCallWithLocation` that takes two `String`s instead of one, the
        2nd one being arbitrary metadata about the error (but usually the
        call-stack). A bi-directional pattern synonym `ErrorCall` continues to
        provide the old API.
      Updates Cabal, array, and haddock submodules.
      Reviewers: nh2, goldfire, simonpj, hvr, rwbarton, austin, bgamari
      Reviewed By: simonpj
      Subscribers: rwbarton, rodlogic, goldfire, maoe, simonmar, carter,
      liyang, bgamari, thomie
      Differential Revision: https://phabricator.haskell.org/D861
      GHC Trac Issues: #5273
    • thomie's avatar
      Testsuite: refactoring only · ad26c54b
      thomie authored
      * Rename `platform_wordsize_qualify` to `find_expected_file`, and make
        it return a filename instead of an (absolute) filepath.
      * Replace most usages of `qualify` by `in_testdir`. Others usage sites
        will be deleted in a later commit.
      These changes will be useful in a later commit, when we'll distinguish
      between files in the source directory and those in a (newly created)
      test directory.
      Reviewed by: austin, bgamari
      Differential Revision: https://phabricator.haskell.org/D1186
  3. 31 Aug, 2015 1 commit
    • niteria's avatar
      Anchor type family instances deterministically · 10a07753
      niteria authored
      This is very similar to D1073. It makes type family instances to be
      attached to a binding with a least `OccName`, therefore not depending on `Unique` ordering.
      Test Plan:
      * this makes `Language.Haskell.Exts.SrcLoc` deterministic
      * ./validate
      Reviewers: simonmar, austin, bgamari, simonpj
      Reviewed By: simonpj
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1192
      GHC Trac Issues: #4012
  4. 30 Aug, 2015 2 commits
  5. 29 Aug, 2015 10 commits
    • Ben Gamari's avatar
      StgCmmHeap: Re-add check for large static allocations · c1d7b4b4
      Ben Gamari authored
      This should at least help alleviate the annoyance of #4505. This
      reintroduces a compile-time check originally added in
      a278f3f0 but dropped with the new code
    • Herbert Valerio Riedel's avatar
      integer-gmp: optimise bitBigNat · c7f06266
      Herbert Valerio Riedel authored
      This is a somewhat minor optimisation exploiting the static knowledge
      of the operands involved allowing to save a few allocations.
      Reviewers: austin, rwbarton, goldfire, bgamari
      Reviewed By: bgamari
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1179
    • Edward Z. Yang's avatar
      ghc-pkg --enable-multi-instance should not complain about case sensitivity. · cd2dc9e2
      Edward Z. Yang authored
      Test Plan: validate
      Reviewers: simonmar, bgamari, austin
      Reviewed By: bgamari, austin
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1177
    • Yuras's avatar
      Fix identifier parsing in hp2ps · 0c823af8
      Yuras authored
      Now identifiers can start with a package key, which is a hash, so they
      may also start with a digit. Identifiers always appear at the beginning
      of a line, and numbers never appear here, soit's safe to allow
      identifiers to start with a digit.
      Test Plan: `concprog002` passes under `threaded2_hT` way
      Reviewers: austin, bgamari, thomie
      Reviewed By: austin, bgamari, thomie
      Differential Revision: https://phabricator.haskell.org/D1175
      GHC Trac Issues: #10661
    • Ben Gamari's avatar
      Dwarf: Produce .dwarf_aranges section · 8476ce24
      Ben Gamari authored
      Test Plan: Check with `readelf --debug-dump=ranges`
      Reviewers: scpmw, austin
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1174
    • Ben Gamari's avatar
      Dwarf: Produce {low,high}_pc attributes for compilation units · cbf58a21
      Ben Gamari authored
      Some libraries (e.g. elfutils) need these otherwise they ignore our
      DWARF annotations.
      Test Plan: Test with elfutils' `readelf --debug-dump=cu_index`
      Reviewers: scpmw, austin
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1173
    • Ben Gamari's avatar
      Dwarf: Fix DW_AT_use_UTF8 attribute · 81ae26d3
      Ben Gamari authored
      Previously this was given in the body but not in the abbreviation table.
      Who knows what sort of havoc this was wrecking.
      Test Plan: Verify against DWARF4 specification
      Reviewers: scpmw, austin
      Subscribers: Tarrasch, thomie
      Differential Revision: https://phabricator.haskell.org/D1172
    • Michael Snoyman's avatar
      Respect GHC_CHARENC environment variable #10762 · 1b56c405
      Michael Snoyman authored
      Only supports UTF-8 as a value right now. I expect some discussion to go
      on around the naming of this variable and whether it's valid to backport
      it to GHC 7.10 (which would be my preference). The motivation here is
      that, when capturing the output of GHC to a file, we often want to
      ensure that the output is UTF-8, regardless of the actual character
      encoding of the terminal/console.
      On the other hand, we don't want to necessary change the
      terminal/console encoding. The reason being:
      * On Windows, this requires a global-esque change to the console
        codepage, which adversely affects other processes in the same console
      * On all OSes, this can break features like smart quote auto-detection.
      Test Plan:
      Set LANG to C, GHC_CHARENC to UTF-8, and compile a Haskell source
      file with a non-ASCII warning produced. The output who include the UTF-8
      sequence instead of replacing it with ?.
      Reviewers: austin, rwbarton, bgamari
      Reviewed By: bgamari
      Subscribers: hsyl20, thomie
      Differential Revision: https://phabricator.haskell.org/D1167
      GHC Trac Issues: #10762
    • Ryan Scott's avatar
      Make Generic (Proxy t) instance poly-kinded (fixes #10775) · a6826c5d
      Ryan Scott authored
      This amounts to enabling PolyKinds in GHC.Generics. However, explicit
      kind signatures must be applied to the datatypes and typeclasses in
      GHC.Generics to ensure that the Core which TcGenGenerics generates
      is properly kinded.
      Several of the typeclasses in GHC.Generics could be poly-kinded, but
      this differential does not attempt to address this, since D493 already
      addresses this.
      Test Plan: ./validate
      Reviewers: hvr, austin, dreixel, bgamari
      Reviewed By: austin, dreixel, bgamari
      Subscribers: goldfire, thomie
      Differential Revision: https://phabricator.haskell.org/D1166
      GHC Trac Issues: #10775
    • Ben Gamari's avatar
      Add testcase for #7411 · 15cb83d4
      Ben Gamari authored
  6. 28 Aug, 2015 1 commit
    • Erik de Castro Lopo's avatar
      RTS: Reduce MBLOCK_SPACE_SIZE on AArch64 · 38c98e4f
      Erik de Castro Lopo authored
      Commit 0d1a8d09 added a two step allocator for 64 bit systems. This
      allocator mmaps a huge (1 TB) chunk of memory out of which it does
      smaller allocations. On AArch64/Arm64 linux, this mmap was failing
      due to the Arm64 Linux kernel parameter CONFIG_ARM64_VA_BITS
      defaulting to 39 bits.
      Therefore reducing the AArch64 value for MBLOCK_SPACE_SIZE to make
      this allocation 1/4 TB while remaining 1 TB for other archs.
      Reviewers: ezyang, austin, bgamari
      Subscribers: thomie
      Differential Revision: https://phabricator.haskell.org/D1171
      GHC Trac Issues: #10682
  7. 27 Aug, 2015 5 commits