- 28 Sep, 2017 1 commit
-
-
Simon Marlow authored
The strictness signature for a data con wrapper wasn't including any dictionary arguments, which meant that bangs on the fields of a constructor with an existential context would be moved to the wrong fields. See T14290 for an example. Test Plan: * New test T14290 * validate Reviewers: simonpj, niteria, austin, bgamari, erikd Reviewed By: simonpj, bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #14290 Differential Revision: https://phabricator.haskell.org/D4040 (cherry picked from commit 5935acdb)
-
- 04 Apr, 2017 1 commit
-
-
David Feuer authored
This reverts commit da4687f6. It's not entirely trivial to clean up the dead code this patch introduced. In particular, when we see ``` case raiseIO# m s of s' -> e ``` we want to know that `e` is dead. For scrutinees that are properly bottom (which we don't want to consider `raiseIO# m s` to be, this is handled by rewriting `bot` to `case bot of {}`. But if we do that for `raiseIO#`, we end up with ``` case raiseIO# m s of {} ``` which looks a lot like bottom and could confuse demand analysis. I think we need to wait with this change until we have a more complete story. Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3413 (cherry picked from commit e83af07e)
-
- 09 Mar, 2017 1 commit
-
-
David Feuer authored
They were `expect_broken` without any output. Add the actual output and remove the `expect_broken`. Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3306
-
- 06 Mar, 2017 1 commit
-
-
Ben Gamari authored
-
- 25 Aug, 2016 1 commit
-
-
Joachim Breitner authored
this fixes #12368. It also refactors dmdFix a bit, removes some redundancies (such as passing around an strictness signature right next to an id, when that id is guaranteed to have been annotated with that strictness signature). Note that when fixed-point iteration does not terminate, we conservatively delete their strictness signatures (set them to nopSig). But this loses the information on how its strict free variables are used! Lazily used variables already escape via lazy_fvs. We ensure that in the case of an aborted fixed-point iteration, also the strict variables are put there (with a conservative demand of topDmd). Differential Revision: https://phabricator.haskell.org/D2392
-
- 07 Jul, 2016 1 commit
-
-
Joachim Breitner authored
By making it believe that some deeply nested value is absent when it really isn't. See #12368.
-
- 11 Mar, 2016 1 commit
-
-
Ben Gamari authored
-
- 12 Nov, 2015 1 commit
-
-
Luite Stegeman authored
Foreign calls may not be strict for lifted arguments. Fixes Trac #11076. Test Plan: ./validate Reviewers: simonpj, bgamari, austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D1464 GHC Trac Issues: #11076
-
- 14 Apr, 2015 1 commit
-
-
Simon Peyton Jones authored
Trac #10218 reports a subtle bug that turned out to be: - CSE invalidated the usage information computed by earlier demand analysis, by increasing sharing - that made a single-entry thunk into a multi-entry thunk - and with -feager-blackholing, that led to <<loop>> The patch fixes it by making the CSE pass zap usage information for let-bound identifiers. It can be restored by -flate-dmd-anal. (But making -flate-dmd-anal the default needs some careful work; see Trac #7782.)
-
- 07 Apr, 2015 1 commit
-
-
Simon Peyton Jones authored
-
- 01 Jul, 2014 1 commit
-
-
Simon Peyton Jones authored
This is a tricky case exposed by Trac #9254. I'm surprised it hasn't shown up before, because it's happens when you use unsafePerformIO in the right way. Anyway, fixed now. See Note [Analysing with absent demand] in Demand.lhs
-
- 13 Feb, 2013 1 commit
-
-
Simon Peyton Jones authored
-
- 20 Jul, 2011 1 commit
-
-
dterei authored
-
- 02 Apr, 2011 1 commit
-
-
batterseapower authored
-
- 01 Jan, 2010 1 commit
-
-
Ian Lynagh authored
-
- 26 Nov, 2008 1 commit
-
-
simonpj authored
-
- 21 Dec, 2007 1 commit
-
-
Simon Peyton Jones authored
Its really a testsuite-framework bug that these mentions of 'opt' have lingered so long. They should have been rejected as a non-existent way.
-
- 29 Oct, 2003 1 commit
-
-
simonpj authored
Add a strictness anal test I found lying in this directory
-
- 23 Jun, 2003 1 commit
-
-
simonpj authored
Add a test for IO strictness
-
- 01 Aug, 2002 1 commit
-
-
simonmar authored
Convert this file to the new test framework (this dir wasn't checked out in my local tree it seems).
-
- 06 Nov, 2001 1 commit
-
-
simonpj authored
Add another demand test
-
- 22 Aug, 2001 1 commit
-
-
simonpj authored
add strictness test
-
- 11 Jul, 2001 1 commit
-
-
sewardj authored
Rename some functions used in vanilla-test.T to be more consistent/logical.
-
- 22 Jun, 2001 1 commit
-
-
sewardj authored
Add simplifier tests.
-