projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
572a047
)
When compiling viac, don't need to emit prototypes for symbols in the RTS
author
Ben.Lippmeier@anu.edu.au
<unknown>
Sat, 2 Jan 2010 09:29:57 +0000
(09:29 +0000)
committer
Ben.Lippmeier@anu.edu.au
<unknown>
Sat, 2 Jan 2010 09:29:57 +0000
(09:29 +0000)
compiler/cmm/CLabel.hs
patch
|
blob
|
history
diff --git
a/compiler/cmm/CLabel.hs
b/compiler/cmm/CLabel.hs
index
4fd0d3a
..
7c8fe85
100644
(file)
--- a/
compiler/cmm/CLabel.hs
+++ b/
compiler/cmm/CLabel.hs
@@
-596,7
+596,15
@@
needsCDecl ModuleRegdLabel = False
needsCDecl (StringLitLabel _) = False
needsCDecl (AsmTempLabel _) = False
needsCDecl (RtsLabel _) = False
needsCDecl (StringLitLabel _) = False
needsCDecl (AsmTempLabel _) = False
needsCDecl (RtsLabel _) = False
-needsCDecl (CmmLabel _ _ _) = True
+
+needsCDecl (CmmLabel pkgId _ _)
+ -- Prototypes for labels defined in the runtime system are imported
+ -- into HC files via includes/Stg.h.
+ | pkgId == rtsPackageId = False
+
+ -- For other labels we inline one into the HC file directly.
+ | otherwise = True
+
needsCDecl l@(ForeignLabel{}) = not (isMathFun l)
needsCDecl (CC_Label _) = True
needsCDecl (CCS_Label _) = True
needsCDecl l@(ForeignLabel{}) = not (isMathFun l)
needsCDecl (CC_Label _) = True
needsCDecl (CCS_Label _) = True