summaryrefslogtreecommitdiff
path: root/compiler/GHC/Linker
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2021-10-08 09:45:38 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-10-12 19:17:15 -0400
commit7215f6dec0bb4db6fe1dc2ef0a126ea37a0d884b (patch)
treea82e8a1b90f81e4ddd3d2f7e08208a9744d506d1 /compiler/GHC/Linker
parent105e2711a0e382863cccee6dbc3ccb0ee79b0ce6 (diff)
downloadhaskell-7215f6dec0bb4db6fe1dc2ef0a126ea37a0d884b.tar.gz
Make fields of Linkable strict
The Module field can end up retaining part of a large structure and is always calculated by projection.
Diffstat (limited to 'compiler/GHC/Linker')
-rw-r--r--compiler/GHC/Linker/Types.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/GHC/Linker/Types.hs b/compiler/GHC/Linker/Types.hs
index e0d04f5bfa..d1131a70f0 100644
--- a/compiler/GHC/Linker/Types.hs
+++ b/compiler/GHC/Linker/Types.hs
@@ -101,10 +101,10 @@ type ClosureEnv = NameEnv (Name, ForeignHValue)
-- | Information we can use to dynamically link modules into the compiler
data Linkable = LM {
- linkableTime :: UTCTime, -- ^ Time at which this linkable was built
+ linkableTime :: !UTCTime, -- ^ Time at which this linkable was built
-- (i.e. when the bytecodes were produced,
-- or the mod date on the files)
- linkableModule :: Module, -- ^ The linkable module itself
+ linkableModule :: !Module, -- ^ The linkable module itself
linkableUnlinked :: [Unlinked]
-- ^ Those files and chunks of code we have yet to link.
--