- 28 Apr, 2016 21 commits
-
-
niteria authored
Note [Unsound mapUniqSet] explains why it got removed. Test Plan: build ghc Reviewers: simonpj, austin, bgamari Reviewed By: bgamari Subscribers: thomie, simonmar Differential Revision: https://phabricator.haskell.org/D2152
-
niteria authored
There are couple of places where we do `foldUniqSet` just to compute `any` or `all`. `foldUniqSet` is non-deterministic in the general case and `any` and `all` also read nicer. Test Plan: ./validate Reviewers: simonmar, goldfire, simonpj, bgamari, austin Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2156 GHC Trac Issues: #4012
-
thomie authored
-
thomie authored
These tests were failing on Travis when run independently from eachother.
-
thomie authored
-
thomie authored
[skip ci]
-
niteria authored
foldOccSet if used would be a potential source of nondeterminism. Since it's not used we can just remove it.
-
Simon Peyton Jones authored
This reverts commit 24864ba5.
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
This patch uses the named fields of * FieldLabel * RecordPatSynField in construction and pattern matching. The fields existed before, but we were often using positional notation. Also a minor refactor of the API of mkPatSynRecSelBinds No change in functionality
-
Simon Peyton Jones authored
I'd missed a call to solveEqualities in the partial-type-sig case of TcBinds.tcUserTypeSig. Also the checkValidType test done there best done after inference, in checkInferredPolyId (and is already done there). Fixes Trac #11976
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
"One fewer arguments to ..." rather than "One fewer argument to ..."
-
Simon Peyton Jones authored
-
niteria authored
We want to remove varSetElems at the source level because it might be a source of nondeterminism. I don't think it introduces nondeterminism here, but it's easy to do the same thing deterministically for the same price. instFlexiTcS :: [TKVar] -> TcS (TCvSubst, [TcType]) instFlexiTcS currently gives the range of the produced substitution as the second element of the tuple, but it's not used anywhere right now. If it started to be used in the code I'm modifying it would cause nondeterminism problems. Test Plan: ./validate Reviewers: austin, goldfire, bgamari, simonmar, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2149 GHC Trac Issues: #4012
-
niteria authored
-
Joachim Breitner authored
with changes to nofib-analyse: * up-to-date parsing of output lines with recent GHC under * a few reporting improvements.
-
Ben Gamari authored
xcrun --find seems like the appropriate choice here. Thanks to Brandon Allbery for suggesting this.
-
Ben Gamari authored
-
- 27 Apr, 2016 1 commit
-
-
Joachim Breitner authored
Previously, the state hack would be implemented in mkLocalId, by looking at the type, and setting the OneShot flag accordingly. This patch changes this so that the OneShot flag faithfully represents what our various analyses found out, and the State Hack is implemented by adjusting the accessors, in particular isOneShotBndr and idStateHackOneShotInfo. This makes it easier to understand what's going on in the analyses, and de-clutters core dumps and interface files. I don’t expect any change in behaviour, at least not in non-fringe cases.
-
- 26 Apr, 2016 13 commits
-
-
niteria authored
varSetElems introduces unnecessary nondeterminism and it was straighforward to just get a deterministic list. Test Plan: ./validate Reviewers: austin, goldfire, bgamari, simonmar, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2145 GHC Trac Issues: #4012
-
niteria authored
`varSetElems` introduces unnecessary nondeterminism and we can do the same thing deterministically for the same price. Test Plan: ./validate Reviewers: goldfire, austin, simonmar, bgamari, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2143 GHC Trac Issues: #4012
-
niteria authored
The uses of varSetElems in these places are unnecessary and while it doesn't intruduce non-determinism in the ABI the plan is to get rid of all varSetElems to get some compile time guarantees. Test Plan: ./validate Reviewers: austin, simonmar, bgamari, goldfire, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2141 GHC Trac Issues: #4012
-
Simon Marlow authored
-
Simon Marlow authored
A microoptimisation in the block allocator.
-
Simon Marlow authored
Make it clearer that the final statement should be exactly "(return|pure) E".
-
Simon Marlow authored
CPU time is never very accurate, and it broke completely with -fexternal-interpreter which runs the interpreted computations in a separate process.
-
Simon Marlow authored
This allows an OS thread to specify which capability it should run on when it makes a call into Haskell. It is intended for a fairly specialised use case, when the client wants to have tighter control over the mapping between OS threads and Capabilities - perhaps 1:1 correspondence, for example.
-
niteria authored
varSetElemsWellScoped introduces unnecessary non-determinism in inferred type signatures. Removing this instance required changing the representation of TcDepVars to use deterministic sets. This is the last occurence of varSetElemsWellScoped, allowing me to finally remove it. Test Plan: ./validate I will update the expected outputs when commiting, some reordering of type variables in types is expected. Reviewers: goldfire, simonpj, austin, bgamari Reviewed By: simonpj Subscribers: thomie, simonmar Differential Revision: https://phabricator.haskell.org/D2135 GHC Trac Issues: #4012
-
thomie authored
-
thomie authored
These aren't run very often, because they require external libraries. https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests/Running#AdditionalPackages maessen-hashtab still doesn't compile, QuickCheck api changed. Update submodule hpc.
-
thomie authored
-
- 24 Apr, 2016 1 commit
-
-
Ben Gamari authored
Thanks to George Colpitts for the suggestion.
-
- 22 Apr, 2016 4 commits
-
-
niteria authored
It's possible to get rid of this use site in a local way and it introduces unneccessary nondeterminism. Test Plan: ./validate Reviewers: simonmar, goldfire, austin, bgamari, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2122 GHC Trac Issues: #4012
-
niteria authored
This change takes us one step closer to being able to remove `varSetElemsWellScoped`. The end goal is to make every source of non-determinism obvious at the source level, so that when we achieve determinism it doesn't get broken accidentally. Test Plan: compile GHC Reviewers: simonmar, goldfire, simonpj, austin, bgamari Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2123 GHC Trac Issues: #4012
-
niteria authored
Grepping reveals that it's not used. I suspect that it isn't useful anymore. Test Plan: grep Reviewers: goldfire, austin, bgamari, simonpj Reviewed By: simonpj Subscribers: thomie, simonmar Differential Revision: https://phabricator.haskell.org/D2134
-
niteria authored
-