Don't seq unfoldings
authorIan Lynagh <igloo@earth.li>
Wed, 20 Oct 2010 14:37:10 +0000 (14:37 +0000)
committerIan Lynagh <igloo@earth.li>
Wed, 20 Oct 2010 14:37:10 +0000 (14:37 +0000)
We generate intermediate unfoldings which are just thrown away, so
evaluating them is a waste of time.

compiler/basicTypes/IdInfo.lhs

index 77f0325..9dda37e 100644 (file)
@@ -243,7 +243,10 @@ setUnfoldingInfoLazily info uf     -- Lazy variant to avoid looking at the
 
 setUnfoldingInfo :: IdInfo -> Unfolding -> IdInfo
 setUnfoldingInfo info uf 
-  = seqUnfolding uf `seq`      -- This seq makes a BIG difference to Trac #4367
+  = -- We don't seq the unfolding, as we generate intermediate
+    -- unfoldings which are just thrown away, so evaluating them is a
+    -- waste of time.
+    -- seqUnfolding uf `seq`
     info { unfoldingInfo = uf }
 
 setArityInfo :: IdInfo -> ArityInfo -> IdInfo