[commit: ghc] wip/rwbarton-seq-unf: WIP: Force stable unfoldings in megaSeqIdInfo (9ca83a6)

git at git.haskell.org git at git.haskell.org
Mon May 1 00:21:59 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/rwbarton-seq-unf
Link       : http://ghc.haskell.org/trac/ghc/changeset/9ca83a67bb88682f0382323ffb6a7481cf02e703/ghc

>---------------------------------------------------------------

commit 9ca83a67bb88682f0382323ffb6a7481cf02e703
Author: Reid Barton <rwbarton at gmail.com>
Date:   Sun Apr 30 20:21:43 2017 -0400

    WIP: Force stable unfoldings in megaSeqIdInfo


>---------------------------------------------------------------

9ca83a67bb88682f0382323ffb6a7481cf02e703
 compiler/coreSyn/CoreSeq.hs | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/compiler/coreSyn/CoreSeq.hs b/compiler/coreSyn/CoreSeq.hs
index d426bd3..bb2ca04 100644
--- a/compiler/coreSyn/CoreSeq.hs
+++ b/compiler/coreSyn/CoreSeq.hs
@@ -28,7 +28,7 @@ megaSeqIdInfo info
 
 -- Omitting this improves runtimes a little, presumably because
 -- some unfoldings are not calculated at all
---    seqUnfolding (unfoldingInfo info)         `seq`
+    seqUnfolding (unfoldingInfo info)           `seq`
 
     seqDemand (demandInfo info)                 `seq`
     seqStrictSig (strictnessInfo info)          `seq`
@@ -101,7 +101,8 @@ seqUnfolding :: Unfolding -> ()
 seqUnfolding (CoreUnfolding { uf_tmpl = e, uf_is_top = top,
                 uf_is_value = b1, uf_is_work_free = b2,
                 uf_expandable = b3, uf_is_conlike = b4,
-                uf_guidance = g})
+                uf_guidance = g, uf_src = src})
+  | isStableSource src
   = seqExpr e `seq` top `seq` b1 `seq` b2 `seq` b3 `seq` b4 `seq` seqGuidance g
 
 seqUnfolding _ = ()



More information about the ghc-commits mailing list