[Git][ghc/ghc][wip/T17910] Another wibble
Simon Peyton Jones (@simonpj)
gitlab at gitlab.haskell.org
Thu Sep 21 16:23:19 UTC 2023
Simon Peyton Jones pushed to branch wip/T17910 at Glasgow Haskell Compiler / GHC
Commits:
cc3ab169 by Simon Peyton Jones at 2023-09-21T17:22:58+01:00
Another wibble
- - - - -
1 changed file:
- compiler/GHC/Core/Opt/SetLevels.hs
Changes:
=====================================
compiler/GHC/Core/Opt/SetLevels.hs
=====================================
@@ -642,7 +642,7 @@ lvlMFE env strict_ctxt e@(_, AnnCase {})
| strict_ctxt -- Don't share cases in a strict context
= lvlExpr env e -- See Note [Case MFEs]
-lvlMFE env strict_ctxt ann_expr
+lvlMFE env _strict_ctxt ann_expr
| floatTopLvlOnly env && not (isTopLvl dest_lvl)
-- Only floating to the top level is allowed.
|| hasFreeJoin env fvs -- If there is a free join, don't float
@@ -741,7 +741,7 @@ lvlMFE env strict_ctxt ann_expr
-- See Note [Floating to the top]
saves_alloc = isTopLvl dest_lvl
- && ( (is_bot_lam && not strict_ctxt)
+ && ( (is_bot_lam && escapes_value_lam)
|| (exprIsExpandable expr && not (is_con_app expr)) )
{-
&& (floatConsts env || is_function || is_bot_lam)
@@ -1616,8 +1616,10 @@ addLvls dest_lvl env vs = foldl' (addLvl dest_lvl) env vs
floatLams :: LevelEnv -> Maybe Int
floatLams le = floatOutLambdas (le_switches le)
+{-
floatConsts :: LevelEnv -> Bool
floatConsts le = floatOutConstants (le_switches le)
+-}
floatOverSat :: LevelEnv -> Bool
floatOverSat le = floatOutOverSatApps (le_switches le)
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/cc3ab1699d76f7ec7e6f2f79136ae29d46d55eb7
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/cc3ab1699d76f7ec7e6f2f79136ae29d46d55eb7
You're receiving this email because of your account on gitlab.haskell.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230921/6eb89bc7/attachment-0001.html>
More information about the ghc-commits
mailing list