summaryrefslogtreecommitdiff
path: root/ghc/compiler/codeGen/CodeGen.lhs
diff options
context:
space:
mode:
authorsimonm <unknown>1999-03-11 11:32:29 +0000
committersimonm <unknown>1999-03-11 11:32:29 +0000
commit74b1006ed8565ff3c39edcdaf859d606dd652641 (patch)
tree7f0061cb76a69f94ecd3459b2f95d3eff4ff0c7a /ghc/compiler/codeGen/CodeGen.lhs
parent6a074eb7adf4ef3e11646911875a39474d00095a (diff)
downloadhaskell-74b1006ed8565ff3c39edcdaf859d606dd652641.tar.gz
[project @ 1999-03-11 11:32:22 by simonm]
Save a few bytes by ommitting the static link field on closures with an empty SRT.
Diffstat (limited to 'ghc/compiler/codeGen/CodeGen.lhs')
-rw-r--r--ghc/compiler/codeGen/CodeGen.lhs8
1 files changed, 5 insertions, 3 deletions
diff --git a/ghc/compiler/codeGen/CodeGen.lhs b/ghc/compiler/codeGen/CodeGen.lhs
index 6d388277fb..c6d94f465d 100644
--- a/ghc/compiler/codeGen/CodeGen.lhs
+++ b/ghc/compiler/codeGen/CodeGen.lhs
@@ -183,7 +183,9 @@ cgTopRhs bndr (StgRhsCon cc con args)
cgTopRhs bndr (StgRhsClosure cc bi srt fvs upd_flag args body)
= ASSERT(null fvs) -- There should be no free variables
- forkStatics (cgTopRhsClosure bndr cc bi srt args body lf_info)
- where
- lf_info = mkClosureLFInfo bndr TopLevel [{-no fvs-}] upd_flag args
+ getSRTLabel `thenFC` \srt_label ->
+ let lf_info =
+ mkClosureLFInfo bndr TopLevel [{-no fvs-}] upd_flag args srt_label srt
+ in
+ forkStatics (cgTopRhsClosure bndr cc bi args body lf_info)
\end{code}