summaryrefslogtreecommitdiff
path: root/compiler/cmm/CmmProcPointZ.hs
diff options
context:
space:
mode:
authorNorman Ramsey <nr@eecs.harvard.edu>2007-09-11 14:29:14 +0000
committerNorman Ramsey <nr@eecs.harvard.edu>2007-09-11 14:29:14 +0000
commit8acda75bd98763ac5643a2152960102a4d98122b (patch)
treea1de28e63971625b54bf738848b2c07670fcd589 /compiler/cmm/CmmProcPointZ.hs
parente8b6200f76059a091e6ae7a03821143819561727 (diff)
downloadhaskell-8acda75bd98763ac5643a2152960102a4d98122b.tar.gz
correct two single-identifier bugs that stopped the Adams optimization from working
Diffstat (limited to 'compiler/cmm/CmmProcPointZ.hs')
-rw-r--r--compiler/cmm/CmmProcPointZ.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/cmm/CmmProcPointZ.hs b/compiler/cmm/CmmProcPointZ.hs
index ed4f54e17a..c5d7177360 100644
--- a/compiler/cmm/CmmProcPointZ.hs
+++ b/compiler/cmm/CmmProcPointZ.hs
@@ -151,7 +151,7 @@ extendPPSet g blocks procPoints =
-- more proc points than b and is not already a proc
-- point. If found, it can become a proc point.
newId succ_id = not (elemBlockSet succ_id procPoints') &&
- nreached id > my_nreached
+ nreached succ_id > my_nreached
in listToMaybe $ filter newId $ succs b
@@ -246,7 +246,7 @@ addProcPointProtocols procPoints formals g =
let (Block _ t) = lookupBlockEnv (gr_blocks g) id `orElse`
panic "jump out of graph"
in case t of
- ZTail (CopyOut {}) (ZLast (LastOther (LastBranch pee [])))
+ ZTail (CopyIn {}) (ZLast (LastOther (LastBranch pee [])))
| elemBlockSet pee procPoints -> Just pee
_ -> Nothing
init_protocols = fold_blocks maybe_add_proto emptyBlockEnv g