[Git][ghc/ghc][wip/T17676] Add strictness signature for a bunch of wired in Ids

Sebastian Graf gitlab at gitlab.haskell.org
Thu Mar 19 17:18:32 UTC 2020



Sebastian Graf pushed to branch wip/T17676 at Glasgow Haskell Compiler / GHC


Commits:
b273859f by Sebastian Graf at 2020-03-19T17:18:27Z
Add strictness signature for a bunch of wired in Ids

- - - - -


1 changed file:

- compiler/basicTypes/MkId.hs


Changes:

=====================================
compiler/basicTypes/MkId.hs
=====================================
@@ -1353,8 +1353,9 @@ noinlineIdName    = mkWiredInIdName gHC_MAGIC (fsLit "noinline")       noinlineI
 proxyHashId :: Id
 proxyHashId
   = pcMiscPrelId proxyName ty
-       (noCafIdInfo `setUnfoldingInfo` evaldUnfolding -- Note [evaldUnfoldings]
-                    `setNeverLevPoly`  ty )
+       (noCafIdInfo `setUnfoldingInfo`  evaldUnfolding -- Note [evaldUnfoldings]
+                    `setNeverLevPoly`   ty
+                    `setStrictnessInfo` emptySig conDiv)
   where
     -- proxy# :: forall {k} (a:k). Proxy# k a
     --
@@ -1375,6 +1376,7 @@ nullAddrId = pcMiscPrelId nullAddrName addrPrimTy info
     info = noCafIdInfo `setInlinePragInfo` alwaysInlinePragma
                        `setUnfoldingInfo`  mkCompulsoryUnfolding (Lit nullAddrLit)
                        `setNeverLevPoly`   addrPrimTy
+                       `setStrictnessInfo` emptySig conDiv
 
 ------------------------------------------------
 seqId :: Id     -- See Note [seqId magic]
@@ -1680,14 +1682,16 @@ inlined.
 
 realWorldPrimId :: Id   -- :: State# RealWorld
 realWorldPrimId = pcMiscPrelId realWorldName realWorldStatePrimTy
-                     (noCafIdInfo `setUnfoldingInfo` evaldUnfolding    -- Note [evaldUnfoldings]
-                                  `setOneShotInfo` stateHackOneShot
-                                  `setNeverLevPoly` realWorldStatePrimTy)
+                     (noCafIdInfo `setUnfoldingInfo`  evaldUnfolding    -- Note [evaldUnfoldings]
+                                  `setOneShotInfo`    stateHackOneShot
+                                  `setNeverLevPoly`   realWorldStatePrimTy
+                                  `setStrictnessInfo` emptySig conDiv)
 
 voidPrimId :: Id     -- Global constant :: Void#
 voidPrimId  = pcMiscPrelId voidPrimIdName voidPrimTy
-                (noCafIdInfo `setUnfoldingInfo` evaldUnfolding     -- Note [evaldUnfoldings]
-                             `setNeverLevPoly`  voidPrimTy)
+                (noCafIdInfo `setUnfoldingInfo`  evaldUnfolding     -- Note [evaldUnfoldings]
+                             `setNeverLevPoly`   voidPrimTy
+                             `setStrictnessInfo` emptySig conDiv)
 
 voidArgId :: Id       -- Local lambda-bound :: Void#
 voidArgId = mkSysLocal (fsLit "void") voidArgIdKey voidPrimTy



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/commit/b273859f93645f666f4eaf6ee1de0c411e58380c

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/commit/b273859f93645f666f4eaf6ee1de0c411e58380c
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20200319/52647c82/attachment-0001.html>


More information about the ghc-commits mailing list