- 03 Aug, 2016 11 commits
-
-
Matthew Pickering authored
-
Matthew Pickering authored
The definition of `setUnfoldingInfoLazily` is exactly the same as `setUnfoldingInfo` and is only used in one place, `TcIface`. They were made equivalent in 2010 in 2ff2497d with the commit message. {{{ commit 2ff2497d Author: Ian Lynagh <igloo@earth.li> Wed Oct 20 15:37:10 2010 Committer: Ian Lynagh <igloo@earth.li> Wed Oct 20 15:37:10 2010 Original File: compiler/basicTypes/IdInfo.lhs Don't seq unfoldings We generate intermediate unfoldings which are just thrown away, so evaluating them is a waste of time. }}} Closes #12453
-
Matthew Pickering authored
-
Matthew Pickering authored
Just pointers about where to look in the source code.
-
Matthew Pickering authored
-
Matthew Pickering authored
-
Ömer Sinan Ağacan authored
-
Simon Marlow authored
-
Simon Marlow authored
Summary: I was getting annoyed by cap/capset messages when using +RTS -DS, which doesn't cause any other trace messages to be emitted. This makes it possible to add --with-rtsopts=-DS when running tests, and not have all the tests fail due to spurious trace messages. Test Plan: validate Reviewers: duncan, bgamari, ezyang, austin, erikd Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2438
-
Simon Marlow authored
Summary: If we had 2 threads on the run queue, say [A,B], and B is bound to the current Task, then we would fail to migrate any threads. This fixes it so that we would migrate A in that case. This will help parallelism a bit in programs that have lots of bound threads. Test Plan: Test program in #12419, which is actually not a great program but it does behave a bit better after this change. Reviewers: ezyang, niteria, bgamari, austin, erikd Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2430 GHC Trac Issues: #12419
-
Simon Marlow authored
Summary: Knowing the length of the run queue in O(1) time is useful: for example we don't have to traverse the run queue to know how many threads we have to migrate in schedulePushWork(). Test Plan: validate Reviewers: ezyang, erikd, bgamari, austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2437
-
- 02 Aug, 2016 1 commit
-
-
Ömer Sinan Ağacan authored
-
- 01 Aug, 2016 3 commits
-
-
Gabor Greif authored
-
alexbiehl authored
Adjust `CmmParse.y` to parse the `cmpxchg{8, 16, 32, 64}` instructions and use the 32 respectively the 64 bit variant in `Primops.cmm`. This effectively eliminates the compare-and-swap ccall to the rts. Based off the mailing list question from @osa1 (https://mail.haskell.org/pipermail/ghc-devs/2016-July/012506.html). Reviewers: simonmar, austin, erikd, bgamari, trommler Reviewed By: erikd, bgamari, trommler Subscribers: carter, trommler, osa1, thomie Differential Revision: https://phabricator.haskell.org/D2431
-
anniecherkaev authored
Summary: Modified the RelevantBindings method in TcErrors.hs to only search over non-shadowed bindings. Test Plan: Wrote 2 simple test cases, verified that it worked with multiple shadowed bindings, and also non-shadowed bindings. Reviewers: austin, bgamari, ezyang Reviewed By: ezyang Subscribers: ezyang, thomie Differential Revision: https://phabricator.haskell.org/D2434 GHC Trac Issues: #12177
-
- 30 Jul, 2016 1 commit
-
-
alexbiehl authored
This patch resulted from the discussion in D2431 and should be merged first. @erikd and @trommler reported errors like ``` /home/erikd/Git/ghc-upstream/rts/dist/build/libHSrts_thr.a(PrimOps.thr_o ): In function `c14_info': (.text+0x2b8): undefined reference to `hs_cmpxchg32' /home/erikd/Git/ghc-upstream/rts/dist/build/libHSrts_thr.a(PrimOps.thr_o ): In function `c5e_info': (.text+0xac4): undefined reference to `hs_cmpxchg32' /home/erikd/Git/ghc-upstream/rts/dist/build/libHSrts_thr.a(PrimOps.thr_o ): In function `c8b_info': (.text+0x1198): undefined reference to `hs_cmpxchg32' /home/erikd/Git/ghc-upstream/rts/dist/build/libHSrts_thr.a(PrimOps.thr_o ): In function `c8b_info': (.text+0x122c): undefined reference to `hs_cmpxchg32' /home/erikd/Git/ghc-upstream/rts/dist/build/libHSrts_thr.a(PrimOps.thr_o ): In function `c8b_info': (.text+0x12ec): undefined reference to `hs_cmpxchg32' ``` on PowerPC. @simonmar suggests to add the specific exports to `rts/package.conf.in`. This patch does exactly that, including all other atomic ops as they probably (maybe someone can verify?) suffer from the same problem on PPC. Test Plan: Please make sure to build on PPC. Reviewers: erikd, austin, bgamari, simonmar, trommler Reviewed By: erikd, trommler Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2435
-
- 28 Jul, 2016 1 commit
-
-
Ömer Sinan Ağacan authored
Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2432
-
- 27 Jul, 2016 2 commits
-
-
niteria authored
@simonmar told me that it makes more sense this way. Test Plan: it still builds Reviewers: bgamari, austin, simonmar, erikd Reviewed By: simonmar, erikd Subscribers: thomie, simonmar Differential Revision: https://phabricator.haskell.org/D2428
-
niteria authored
This exposes mblocks_allocated in the GCStats struct. Test Plan: it builds Reviewers: bgamari, simonmar, austin, hvr, erikd Reviewed By: erikd Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2429
-
- 26 Jul, 2016 4 commits
-
-
Edward Z. Yang authored
Summary: Three things in this commit: 1. Get rid of sb_ids; we are not going to use them to avoid infinite unfoldings in hs-boot files. 2. Compute sb_tcs from ModIface rather than ModDetails. This means that the typechecker can look at this field without forcing the boot ModDetails, which would be bad if the ModDetails is not available yet (due to knot tying.) 3. A big honking comment explaining what is going on here. Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu> Reviewers: simonpj, austin, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2380
-
Simon Marlow authored
-
Simon Marlow authored
-
Ömer Sinan Ağacan authored
-
- 25 Jul, 2016 1 commit
-
-
Gabor Greif authored
-
- 24 Jul, 2016 1 commit
-
-
thomie authored
-
- 22 Jul, 2016 8 commits
-
-
Erik de Castro Lopo authored
Summary: The recent Compact Regions commit (cf989ffe) builds fine on Linux but doesn't build on OS X r Windows. * rts/sm/CNF.c: Drop un-needed #includes. * Fix parenthesis usage with CPP ASSERT macro. * Fix format string in debugBelch messages. * Use stg_max() instead hand rolled inline max() function. Test Plan: Build on Linux, OS X and Windows Reviewers: gcampax, simonmar, austin, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2421
-
Simon Marlow authored
-
Simon Marlow authored
-
Simon Marlow authored
When loading a large number of modules into GHCi, we collect CompiledByteCode for every module and then link it all at the end. Space leaks in the CompiledByteCode linger until we traverse it all for linking, and possibly longer, if there are bits we don't look at. This is the nuke-it-from-orbit approach: we deepseq the whole thing after code generation. It's the only way to be sure. Test Plan: Heap profile of GHCi while loading nofib/real/anna into GHCi, this patch reduces the peak heap usage from ~100M to ~50M. Reviewers: hvr, austin, bgamari, erikd Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2419
-
Simon Marlow authored
I needed to rnf a data structure (CompiledByteCode) but we don't have any good deepseq infrastructure in the compiler yet. There are bits and pieces, but nothing consistent, so this is a start. We already had a dependency on deepseq indirectly via other packages (e.g. containers). Includes an update to the haddock submodule, to remove orphan NFData instances in there. Test Plan: validate Reviewers: austin, bgamari, erikd, hvr Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2418
-
Ömer Sinan Ağacan authored
-
Ömer Sinan Ağacan authored
-
Ben Gamari authored
This reverts commit cac3fb06. This breaks OS X and Windows.
-
- 21 Jul, 2016 7 commits
-
-
Gabor Greif authored
-
Gabor Greif authored
-
Ömer Sinan Ağacan authored
Test Plan: validate Reviewers: bgamari, austin Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2420
-
Ömer Sinan Ağacan authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-