summaryrefslogtreecommitdiff
path: root/compiler/nativeGen/BlockLayout.hs
diff options
context:
space:
mode:
authorJohn Ericson <git@JohnEricson.me>2019-09-01 13:40:40 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2019-09-05 18:50:19 -0400
commitf96d57b800f10ab194897133f3c0d11e4fbc71b4 (patch)
treea377cbfbb8b4872d5d8397a08bf5f261e222a254 /compiler/nativeGen/BlockLayout.hs
parent11679e5bec1994775072e8e60f24b4ce104af0a7 (diff)
downloadhaskell-f96d57b800f10ab194897133f3c0d11e4fbc71b4.tar.gz
Make the C-- O and C types constructors with DataKinds
The tightens up the kinds a bit. I use type synnonyms to avoid adding promotion ticks everywhere.
Diffstat (limited to 'compiler/nativeGen/BlockLayout.hs')
-rw-r--r--compiler/nativeGen/BlockLayout.hs7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/nativeGen/BlockLayout.hs b/compiler/nativeGen/BlockLayout.hs
index d01c31f5fd..5e34b28793 100644
--- a/compiler/nativeGen/BlockLayout.hs
+++ b/compiler/nativeGen/BlockLayout.hs
@@ -2,7 +2,10 @@
-- Copyright (c) 2018 Andreas Klebinger
--
-{-# LANGUAGE TypeFamilies, ScopedTypeVariables, CPP #-}
+{-# LANGUAGE CPP #-}
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE TypeFamilies #-}
module BlockLayout
( sequenceTop )
@@ -512,7 +515,7 @@ buildChains succWeights blocks
-- We make the CFG a Hoopl Graph, so we can reuse revPostOrder.
-newtype BlockNode e x = BN (BlockId,[BlockId])
+newtype BlockNode (e :: Extensibility) (x :: Extensibility) = BN (BlockId,[BlockId])
instance NonLocal (BlockNode) where
entryLabel (BN (lbl,_)) = lbl
successors (BN (_,succs)) = succs