summaryrefslogtreecommitdiff
path: root/compiler/stgSyn/CoreToStg.hs
diff options
context:
space:
mode:
authorÖmer Sinan Ağacan <omeragacan@gmail.com>2016-02-24 16:22:36 -0500
committerÖmer Sinan Ağacan <omeragacan@gmail.com>2016-02-24 16:41:55 -0500
commita9dc62ae3a28a7c5fc173895f148e65c6ffc14de (patch)
treeb52e5881bfaa2438233aea75fdc2420a62322ba8 /compiler/stgSyn/CoreToStg.hs
parentd8c64e86361f6766ebe26a262bb229fb8301a42a (diff)
downloadhaskell-a9dc62ae3a28a7c5fc173895f148e65c6ffc14de.tar.gz
Remove "use mask" from StgAlt syntax
Reviewers: austin, bgamari, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D1933
Diffstat (limited to 'compiler/stgSyn/CoreToStg.hs')
-rw-r--r--compiler/stgSyn/CoreToStg.hs8
1 files changed, 2 insertions, 6 deletions
diff --git a/compiler/stgSyn/CoreToStg.hs b/compiler/stgSyn/CoreToStg.hs
index 414571cbf8..c275f4d4f3 100644
--- a/compiler/stgSyn/CoreToStg.hs
+++ b/compiler/stgSyn/CoreToStg.hs
@@ -413,18 +413,14 @@ coreToStgExpr (Case scrut bndr _ alts) = do
-- where a nullary tuple is mapped to (State# World#)
ASSERT( null binders )
do { (rhs2, rhs_fvs, rhs_escs) <- coreToStgExpr rhs
- ; return ((DEFAULT, [], [], rhs2), rhs_fvs, rhs_escs) }
+ ; return ((DEFAULT, [], rhs2), rhs_fvs, rhs_escs) }
| otherwise
= let -- Remove type variables
binders' = filterStgBinders binders
in
extendVarEnvLne [(b, LambdaBound) | b <- binders'] $ do
(rhs2, rhs_fvs, rhs_escs) <- coreToStgExpr rhs
- let
- -- Records whether each param is used in the RHS
- good_use_mask = [ b `elementOfFVInfo` rhs_fvs | b <- binders' ]
-
- return ( (con, binders', good_use_mask, rhs2),
+ return ( (con, binders', rhs2),
binders' `minusFVBinders` rhs_fvs,
rhs_escs `delVarSetList` binders' )
-- ToDo: remove the delVarSet;