diff options
Diffstat (limited to 'compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs')
-rw-r--r-- | compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs b/compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs index de489b342b..d0330a4f6a 100644 --- a/compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs +++ b/compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs @@ -18,12 +18,13 @@ import GHC.CmmToAsm.Reg.Linear.FreeRegs import GHC.CmmToAsm.Reg.Liveness import GHC.CmmToAsm.Instr import GHC.CmmToAsm.Config +import GHC.CmmToAsm.Types + import GHC.Platform.Reg import GHC.Cmm.BlockId import GHC.Cmm.Dataflow.Collections import GHC.Data.Graph.Directed -import GHC.Utils.Outputable import GHC.Utils.Panic import GHC.Types.Unique import GHC.Types.Unique.FM @@ -33,7 +34,7 @@ import GHC.Types.Unique.Set -- vregs are in the correct regs for its destination. -- joinToTargets - :: (FR freeRegs, Instruction instr, Outputable instr) + :: (FR freeRegs, Instruction instr) => BlockMap RegSet -- ^ maps the unique of the blockid to the set of vregs -- that are known to be live on the entry to each block. @@ -57,7 +58,7 @@ joinToTargets block_live id instr ----- joinToTargets' - :: (FR freeRegs, Instruction instr, Outputable instr) + :: (FR freeRegs, Instruction instr) => BlockMap RegSet -- ^ maps the unique of the blockid to the set of vregs -- that are known to be live on the entry to each block. @@ -111,7 +112,7 @@ joinToTargets' block_live new_blocks block_id instr (dest:dests) -- this is the first time we jumped to this block. -joinToTargets_first :: (FR freeRegs, Instruction instr, Outputable instr) +joinToTargets_first :: (FR freeRegs, Instruction instr) => BlockMap RegSet -> [NatBasicBlock instr] -> BlockId @@ -140,7 +141,7 @@ joinToTargets_first block_live new_blocks block_id instr dest dests -- we've jumped to this block before -joinToTargets_again :: (Instruction instr, FR freeRegs, Outputable instr) +joinToTargets_again :: (Instruction instr, FR freeRegs) => BlockMap RegSet -> [NatBasicBlock instr] -> BlockId |