diff options
author | Ben Gamari <ben@smart-cactus.org> | 2022-11-09 20:48:04 -0500 |
---|---|---|
committer | Matthew Pickering <matthewtpickering@gmail.com> | 2022-12-15 09:50:32 +0000 |
commit | aa422c7127efd5a9da40a4bd53806942f678a5c2 (patch) | |
tree | a688552235659a55a1d40203269ea84869f020d1 | |
parent | 5c75888e23ddb113dc5de872fdfc03619e7f280e (diff) | |
download | haskell-aa422c7127efd5a9da40a4bd53806942f678a5c2.tar.gz |
cmm: Introduce blockConcat
(cherry picked from commit da7b51d8598400ed8073afe1b311c73a04e2230d)
-rw-r--r-- | compiler/GHC/Cmm/ContFlowOpt.hs | 2 | ||||
-rw-r--r-- | compiler/GHC/Cmm/Dataflow/Block.hs | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/compiler/GHC/Cmm/ContFlowOpt.hs b/compiler/GHC/Cmm/ContFlowOpt.hs index 350f94c818..b8f2130d9d 100644 --- a/compiler/GHC/Cmm/ContFlowOpt.hs +++ b/compiler/GHC/Cmm/ContFlowOpt.hs @@ -12,7 +12,7 @@ where import GHC.Prelude hiding (succ, unzip, zip) -import GHC.Cmm.Dataflow.Block +import GHC.Cmm.Dataflow.Block hiding (blockConcat) import GHC.Cmm.Dataflow.Collections import GHC.Cmm.Dataflow.Graph import GHC.Cmm.Dataflow.Label diff --git a/compiler/GHC/Cmm/Dataflow/Block.hs b/compiler/GHC/Cmm/Dataflow/Block.hs index f3876e241c..47d76ad2d4 100644 --- a/compiler/GHC/Cmm/Dataflow/Block.hs +++ b/compiler/GHC/Cmm/Dataflow/Block.hs @@ -14,6 +14,7 @@ module GHC.Cmm.Dataflow.Block , IndexedCO , Block(..) , blockAppend + , blockConcat , blockCons , blockFromList , blockJoin @@ -136,6 +137,8 @@ blockJoin f b t = BlockCC f b t blockAppend :: Block n e O -> Block n O x -> Block n e x blockAppend = cat +blockConcat :: [Block n O O] -> Block n O O +blockConcat = foldr blockAppend emptyBlock -- Taking apart |