summaryrefslogtreecommitdiff
path: root/compiler/simplCore
diff options
context:
space:
mode:
authorMax Bolingbroke <batterseapower@hotmail.com>2008-07-31 01:23:48 +0000
committerMax Bolingbroke <batterseapower@hotmail.com>2008-07-31 01:23:48 +0000
commit0b57caeac7840ef903a54ddd3196f3d573ca8cc4 (patch)
treece95c850d6e84f3bdb13d2c6944bb78ac2384225 /compiler/simplCore
parentc2def8304ba7c48c4a3e652a63f136ebcd453674 (diff)
downloadhaskell-0b57caeac7840ef903a54ddd3196f3d573ca8cc4.tar.gz
Follow Digraph changes in OccurAnal
Diffstat (limited to 'compiler/simplCore')
-rw-r--r--compiler/simplCore/OccurAnal.lhs8
1 files changed, 4 insertions, 4 deletions
diff --git a/compiler/simplCore/OccurAnal.lhs b/compiler/simplCore/OccurAnal.lhs
index 8a7b40a6df..2b2c058194 100644
--- a/compiler/simplCore/OccurAnal.lhs
+++ b/compiler/simplCore/OccurAnal.lhs
@@ -28,7 +28,7 @@ import VarSet
import VarEnv
import Maybes ( orElse )
-import Digraph ( stronglyConnCompR, SCC(..) )
+import Digraph ( SCC(..), stronglyConnCompFromEdgedVerticesR )
import PrelNames ( buildIdKey, foldrIdKey, runSTRepIdKey, augmentIdKey )
import Unique ( Unique )
import UniqFM ( keysUFM, intersectUFM_C, foldUFM_Directly )
@@ -290,7 +290,7 @@ occAnalBind env (Rec pairs) body_usage
bndr_set = mkVarSet (map fst pairs)
sccs :: [SCC (Node Details)]
- sccs = {-# SCC "occAnalBind.scc" #-} stronglyConnCompR rec_edges
+ sccs = {-# SCC "occAnalBind.scc" #-} stronglyConnCompFromEdgedVerticesR rec_edges
rec_edges :: [Node Details]
rec_edges = {-# SCC "occAnalBind.assoc" #-} map make_node pairs
@@ -365,7 +365,7 @@ occAnalRec (CyclicSCC nodes) (body_usage, binds)
----------------------------
-- Now reconstruct the cycle
pairs | no_rules = reOrderCycle tagged_nodes
- | otherwise = concatMap reOrderRec (stronglyConnCompR loop_breaker_edges)
+ | otherwise = concatMap reOrderRec (stronglyConnCompFromEdgedVerticesR loop_breaker_edges)
-- See Note [Choosing loop breakers] for looop_breaker_edges
loop_breaker_edges = map mk_node tagged_nodes
@@ -474,7 +474,7 @@ reOrderCycle [bind] -- Common case of simple self-recursion
reOrderCycle (bind : binds)
= -- Choose a loop breaker, mark it no-inline,
-- do SCC analysis on the rest, and recursively sort them out
- concatMap reOrderRec (stronglyConnCompR unchosen) ++
+ concatMap reOrderRec (stronglyConnCompFromEdgedVerticesR unchosen) ++
[(makeLoopBreaker False bndr, rhs)]
where