projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Keep track of explicit kinding in HsTyVarBndr; plus fix Trac #3845
[ghc-hetmet.git]
/
compiler
/
cmm
/
CmmProcPoint.hs
diff --git
a/compiler/cmm/CmmProcPoint.hs
b/compiler/cmm/CmmProcPoint.hs
index
df408c6
..
de8cfa3
100644
(file)
--- a/
compiler/cmm/CmmProcPoint.hs
+++ b/
compiler/cmm/CmmProcPoint.hs
@@
-4,12
+4,11
@@
module CmmProcPoint (
#include "HsVersions.h"
#include "HsVersions.h"
-import Cmm
+import BlockId
import CmmBrokenBlock
import Dataflow
import UniqSet
import CmmBrokenBlock
import Dataflow
import UniqSet
-import UniqFM
import Panic
-- Determine the proc points for a set of basic blocks.
import Panic
-- Determine the proc points for a set of basic blocks.
@@
-77,8
+76,8
@@
calculateNewProcPoints owners block =
then unitUniqSet child_id
else emptyUniqSet
where
then unitUniqSet child_id
else emptyUniqSet
where
- parent_owners = lookupWithDefaultUFM owners emptyUniqSet parent_id
- child_owners = lookupWithDefaultUFM owners emptyUniqSet child_id
+ parent_owners = lookupWithDefaultBEnv owners emptyUniqSet parent_id
+ child_owners = lookupWithDefaultBEnv owners emptyUniqSet child_id
needs_proc_point =
-- only if parent isn't dead
(not $ isEmptyUniqSet parent_owners) &&
needs_proc_point =
-- only if parent isn't dead
(not $ isEmptyUniqSet parent_owners) &&
@@
-91,11
+90,11
@@
calculateOwnership :: BlockEnv BrokenBlock
-> [BrokenBlock]
-> BlockEnv (UniqSet BlockId)
calculateOwnership blocks_ufm proc_points blocks =
-> [BrokenBlock]
-> BlockEnv (UniqSet BlockId)
calculateOwnership blocks_ufm proc_points blocks =
- fixedpoint dependants update (map brokenBlockId blocks) emptyUFM
+ fixedpoint dependants update (map brokenBlockId blocks) emptyBlockEnv
where
dependants :: BlockId -> [BlockId]
dependants ident =
where
dependants :: BlockId -> [BlockId]
dependants ident =
- brokenBlockTargets $ lookupWithDefaultUFM
+ brokenBlockTargets $ lookupWithDefaultBEnv
blocks_ufm unknown_block ident
update :: BlockId
blocks_ufm unknown_block ident
update :: BlockId
@@
-105,16
+104,16
@@
calculateOwnership blocks_ufm proc_points blocks =
update ident cause owners =
case (cause, ident `elementOfUniqSet` proc_points) of
(Nothing, True) ->
update ident cause owners =
case (cause, ident `elementOfUniqSet` proc_points) of
(Nothing, True) ->
- Just $ addToUFM owners ident (unitUniqSet ident)
+ Just $ extendBlockEnv owners ident (unitUniqSet ident)
(Nothing, False) -> Nothing
(Nothing, False) -> Nothing
- (Just cause', True) -> Nothing
+ (Just _, True) -> Nothing
(Just cause', False) ->
if (sizeUniqSet old) == (sizeUniqSet new)
then Nothing
(Just cause', False) ->
if (sizeUniqSet old) == (sizeUniqSet new)
then Nothing
- else Just $ addToUFM owners ident new
+ else Just $ extendBlockEnv owners ident new
where
where
- old = lookupWithDefaultUFM owners emptyUniqSet ident
+ old = lookupWithDefaultBEnv owners emptyUniqSet ident
new = old `unionUniqSets`
new = old `unionUniqSets`
- lookupWithDefaultUFM owners emptyUniqSet cause'
+ lookupWithDefaultBEnv owners emptyUniqSet cause'
unknown_block = panic "unknown BlockId in calculateOwnership"
unknown_block = panic "unknown BlockId in calculateOwnership"