summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Klebinger <klebinger.andreas@gmx.at>2020-01-25 20:38:15 +0100
committerAndreas Klebinger <klebinger.andreas@gmx.at>2020-01-26 02:01:45 +0100
commit872f026857a8c854691a363acd27ef65bf9ecd56 (patch)
tree24786b7420ca6a4e57469d8a37694abb892e4447
parentc4b926104674a093dbf65c721a645f66f012ee88 (diff)
downloadhaskell-wip/andreask/evac_static.tar.gz
Add IntLike Constructor and Modulewip/andreask/evac_static
-rw-r--r--libraries/ghc-prim/GHC/Intlike.hs20
-rw-r--r--libraries/ghc-prim/changelog.md6
-rw-r--r--rts/StgMiscClosures.cmm7
-rw-r--r--rts/package.conf.in3
-rw-r--r--rts/rts.cabal.in2
-rw-r--r--rts/win32/libHSghc-prim.def2
6 files changed, 28 insertions, 12 deletions
diff --git a/libraries/ghc-prim/GHC/Intlike.hs b/libraries/ghc-prim/GHC/Intlike.hs
index eca7bb7c2f..d8a911670a 100644
--- a/libraries/ghc-prim/GHC/Intlike.hs
+++ b/libraries/ghc-prim/GHC/Intlike.hs
@@ -1,7 +1,13 @@
-{-# LANGUAGE MagicHash, NoImplicitPrelude #-}
-
-module Intlike where
-
--- See Note [INTLIKE closures] in StcMiscClosures.cmm
--- for more details.
-data StaticBoxedWordType = BWT# Word#
+{-# LANGUAGE MagicHash, NoImplicitPrelude #-}
+
+module GHC.Intlike where
+
+import GHC.Prim
+
+-- It seems the definition below triggers loading of the GHC.Types .hi file
+-- We make sure that's compiled first by importing it here.
+import GHC.Types ()
+
+-- See Note [INTLIKE closures] in StcMiscClosures.cmm
+-- for more details.
+data StaticIntLike = ConstILike# Word#
diff --git a/libraries/ghc-prim/changelog.md b/libraries/ghc-prim/changelog.md
index cf14d21c81..0c587b1455 100644
--- a/libraries/ghc-prim/changelog.md
+++ b/libraries/ghc-prim/changelog.md
@@ -1,3 +1,9 @@
+## 0.6.2 (edit as necessary)
+
+- Shipped with GHC 8.X
+
+- Add (non-exposed) Intlike module used by the GHC RTS.
+
## 0.6.1 (edit as necessary)
- Shipped with GHC 8.10.1
diff --git a/rts/StgMiscClosures.cmm b/rts/StgMiscClosures.cmm
index 80e3c4314b..26790626f2 100644
--- a/rts/StgMiscClosures.cmm
+++ b/rts/StgMiscClosures.cmm
@@ -760,13 +760,14 @@ INFO_TABLE( stg_COMPACT_NFDATA_DIRTY, 0, 8, COMPACT_NFDATA, "COMPACT_NFDATA", "C
*/
// #warning Is this correct? _imp is a pointer!
#define Int_hash_con_info _imp__ghczmprim_GHCziTypes_Izh_con_info
-#define BWT_hash_con_info _imp__ghczmprim_GHCziTypes_BWTzh_con_info
+#define ConstILike_hash_con_info _imp__ghczmprim_GHCziIntlike_ConstILikezh_con_info
#else
#define Int_hash_con_info ghczmprim_GHCziTypes_Izh_con_info
-#define BWT_hash_con_info ghczmprim_GHCziTypes_BWTzh_con_info
+#define ConstILike_hash_con_info ghczmprim_GHCziIntlike_ConstILikezh_con_info
+
#endif
-#define INTLIKE_HDR(n) CLOSURE(BWT_hash_con_info, n)
+#define INTLIKE_HDR(n) CLOSURE(ConstILike_hash_con_info, n)
#if !(defined(COMPILING_WINDOWS_DLL))
section "data" {
diff --git a/rts/package.conf.in b/rts/package.conf.in
index 21021932a7..f24ce0d329 100644
--- a/rts/package.conf.in
+++ b/rts/package.conf.in
@@ -112,6 +112,7 @@ ld-options:
, "-Wl,-u,_ghczmprim_GHCziTypes_Fzh_con_info"
, "-Wl,-u,_ghczmprim_GHCziTypes_Dzh_con_info"
, "-Wl,-u,_ghczmprim_GHCziTypes_Wzh_con_info"
+ , "-Wl,-u,_ghczmprim_GHCziIntlike_ConstILikezh_con_info"
, "-Wl,-u,_base_GHCziPtr_Ptr_con_info"
, "-Wl,-u,_base_GHCziPtr_FunPtr_con_info"
, "-Wl,-u,_base_GHCziInt_I8zh_con_info"
@@ -215,7 +216,7 @@ ld-options:
, "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
, "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
, "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
- , "-Wl,-u,ghczmprim_GHCziTypes_BWTzh_con_info"
+ , "-Wl,-u,ghczmprim_GHCziIntlike_ConstILikezh_con_info"
, "-Wl,-u,base_GHCziPtr_Ptr_con_info"
, "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
, "-Wl,-u,base_GHCziInt_I8zh_con_info"
diff --git a/rts/rts.cabal.in b/rts/rts.cabal.in
index b9a67c7ca1..2018589722 100644
--- a/rts/rts.cabal.in
+++ b/rts/rts.cabal.in
@@ -233,6 +233,7 @@ library
"-Wl,-u,_ghczmprim_GHCziTypes_Fzh_con_info"
"-Wl,-u,_ghczmprim_GHCziTypes_Dzh_con_info"
"-Wl,-u,_ghczmprim_GHCziTypes_Wzh_con_info"
+ "-Wl,-u,_ghczmprim_GHCziIntlike_ConstILikezh_con_info"
"-Wl,-u,_base_GHCziPtr_Ptr_con_info"
"-Wl,-u,_base_GHCziPtr_FunPtr_con_info"
"-Wl,-u,_base_GHCziInt_I8zh_con_info"
@@ -309,6 +310,7 @@ library
"-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
"-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
"-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
+ "-Wl,-u,ghczmprim_GHCziIntlike_ConstILikezh_con_info"
"-Wl,-u,base_GHCziPtr_Ptr_con_info"
"-Wl,-u,base_GHCziPtr_FunPtr_con_info"
"-Wl,-u,base_GHCziInt_I8zh_con_info"
diff --git a/rts/win32/libHSghc-prim.def b/rts/win32/libHSghc-prim.def
index e6b5e059c7..8b8c85ec92 100644
--- a/rts/win32/libHSghc-prim.def
+++ b/rts/win32/libHSghc-prim.def
@@ -7,10 +7,10 @@ EXPORTS
ghczmprim_GHCziTypes_False_closure
ghczmprim_GHCziTypes_Czh_con_info
ghczmprim_GHCziTypes_Izh_con_info
- ghczmprim_GHCziTypes_BWTzh_con_info
ghczmprim_GHCziTypes_Fzh_con_info
ghczmprim_GHCziTypes_Dzh_con_info
ghczmprim_GHCziTypes_Wzh_con_info
ghczmprim_GHCziTypes_Czh_static_info
ghczmprim_GHCziTypes_Izh_static_info
+ ghczmprim_GHCziIntlike_ConstILikezh_con_info