summaryrefslogtreecommitdiff
path: root/compiler/cmm/CLabel.hs
diff options
context:
space:
mode:
authorMax Bolingbroke <batterseapower@hotmail.com>2011-07-29 10:08:33 +0100
committerMax Bolingbroke <batterseapower@hotmail.com>2011-07-29 10:08:33 +0100
commit06dc1813f5cfc42010925ad7d36dff1791d846ae (patch)
tree5cb07f521ca8bb2ffaa2f54f5735006f52e0efa6 /compiler/cmm/CLabel.hs
parent76b93dcb27da2994b7eb3c70b16faabf06e9bd82 (diff)
downloadhaskell-06dc1813f5cfc42010925ad7d36dff1791d846ae.tar.gz
We no longer need to mark Entry as local or not
Diffstat (limited to 'compiler/cmm/CLabel.hs')
-rw-r--r--compiler/cmm/CLabel.hs11
1 files changed, 5 insertions, 6 deletions
diff --git a/compiler/cmm/CLabel.hs b/compiler/cmm/CLabel.hs
index cb3b6c6ed9..4b1259fa57 100644
--- a/compiler/cmm/CLabel.hs
+++ b/compiler/cmm/CLabel.hs
@@ -286,7 +286,7 @@ data IdLabelInfo
= Closure -- ^ Label for closure
| SRT -- ^ Static reference table
| InfoTable IsLocal -- ^ Info tables for closures; always read-only
- | Entry IsLocal -- ^ Entry point
+ | Entry -- ^ Entry point
| Slow -- ^ Slow entry point
| RednCounts -- ^ Label of place to keep Ticky-ticky info for this Id
@@ -361,12 +361,12 @@ mkRednCountsLabel name c = IdLabel name c RednCounts
-- These have local & (possibly) external variants:
mkLocalClosureLabel name c = IdLabel name c Closure
mkLocalInfoTableLabel name c = IdLabel name c (InfoTable True)
-mkLocalEntryLabel name c = IdLabel name c (Entry True)
+mkLocalEntryLabel name c = IdLabel name c Entry
mkLocalClosureTableLabel name c = IdLabel name c ClosureTable
mkClosureLabel name c = IdLabel name c Closure
mkInfoTableLabel name c = IdLabel name c (InfoTable False)
-mkEntryLabel name c = IdLabel name c (Entry False)
+mkEntryLabel name c = IdLabel name c Entry
mkClosureTableLabel name c = IdLabel name c ClosureTable
mkLocalConInfoTableLabel c con = IdLabel con c ConInfoTable
mkLocalConEntryLabel c con = IdLabel con c ConEntry
@@ -503,7 +503,7 @@ mkPlainModuleInitLabel mod = PlainModuleInitLabel mod
-- Brutal method of obtaining a closure label
cvtToClosureLbl (IdLabel n c (InfoTable _)) = IdLabel n c Closure
-cvtToClosureLbl (IdLabel n c (Entry _)) = IdLabel n c Closure
+cvtToClosureLbl (IdLabel n c Entry) = IdLabel n c Closure
cvtToClosureLbl (IdLabel n c ConEntry) = IdLabel n c Closure
cvtToClosureLbl (IdLabel n c RednCounts) = IdLabel n c Closure
cvtToClosureLbl l@(IdLabel n c Closure) = l
@@ -676,7 +676,6 @@ externallyVisibleCLabel (LargeSRTLabel _) = False
externallyVisibleIdLabel :: IdLabelInfo -> Bool
externallyVisibleIdLabel SRT = False
-externallyVisibleIdLabel (Entry lcl) = not lcl
externallyVisibleIdLabel (InfoTable lcl) = not lcl
externallyVisibleIdLabel _ = True
@@ -964,7 +963,7 @@ ppIdFlavor x = pp_cSEP <>
Closure -> ptext (sLit "closure")
SRT -> ptext (sLit "srt")
InfoTable _ -> ptext (sLit "info")
- Entry _ -> ptext (sLit "entry")
+ Entry -> ptext (sLit "entry")
Slow -> ptext (sLit "slow")
RednCounts -> ptext (sLit "ct")
ConEntry -> ptext (sLit "con_entry")