Commit cef4b33c authored by simonpj@microsoft.com's avatar simonpj@microsoft.com

Retain unfoldings even with SimplGently

When binding x = e, we now attach an unfolding to 'x' even if
it won't be used because SimplGently is on. 

Reason: the specialiser runs right after SimplGently, and it (now)
only gathers call information for calls whose dictionary arguments are
"interesting" -- i.e. have an unfolding of some kind.
parent 3444b48e
......@@ -566,7 +566,10 @@ completeBind env top_lvl old_bndr new_bndr new_rhs
old_info = idInfo old_bndr
occ_info = occInfo old_info
wkr = substWorker env (workerInfo old_info)
omit_unfolding = isNonRuleLoopBreaker occ_info || not (activeInline env old_bndr)
omit_unfolding = isNonRuleLoopBreaker occ_info
-- or not (activeInline env old_bndr)
-- Do *not* trim the unfolding in SimplGently, else
-- the specialiser can't see it!
-----------------
addPolyBind :: TopLevelFlag -> SimplEnv -> OutBind -> SimplEnv
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment