diff options
| author | Sylvain Henry <sylvain@haskus.fr> | 2020-06-03 20:46:05 +0200 |
|---|---|---|
| committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-08-18 22:12:13 -0400 |
| commit | 0c5ed5c7eb30bc5462b67ff097c3388597265a4b (patch) | |
| tree | d55e420625a2118c7854d2b41bb4ee4ed5755b7f /compiler/ghc.cabal.in | |
| parent | aa4b744d51aa6bdb46064f981ea8e001627921d6 (diff) | |
| download | haskell-0c5ed5c7eb30bc5462b67ff097c3388597265a4b.tar.gz | |
DynFlags: refactor GHC.CmmToAsm (#17957, #10143)
This patch removes the use of `sdocWithDynFlags` from GHC.CmmToAsm.*.Ppr
To do that I've had to make some refactoring:
* X86' and PPC's `Instr` are no longer `Outputable` as they require a
`Platform` argument
* `Instruction` class now exposes `pprInstr :: Platform -> instr -> SDoc`
* as a consequence, I've refactored some modules to avoid .hs-boot files
* added (derived) functor instances for some datatypes parametric in the
instruction type. It's useful for pretty-printing as we just have to
map `pprInstr` before pretty-printing the container datatype.
Diffstat (limited to 'compiler/ghc.cabal.in')
| -rw-r--r-- | compiler/ghc.cabal.in | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/ghc.cabal.in b/compiler/ghc.cabal.in index 2c2d2f4e26..9a12e16d53 100644 --- a/compiler/ghc.cabal.in +++ b/compiler/ghc.cabal.in @@ -587,18 +587,23 @@ Library GHC.Platform.Reg.Class GHC.CmmToAsm.PIC GHC.CmmToAsm.CPrim + GHC.CmmToAsm.Types + GHC.CmmToAsm.Utils + GHC.CmmToAsm.X86 GHC.CmmToAsm.X86.Regs GHC.CmmToAsm.X86.RegInfo GHC.CmmToAsm.X86.Instr GHC.CmmToAsm.X86.Cond GHC.CmmToAsm.X86.Ppr GHC.CmmToAsm.X86.CodeGen + GHC.CmmToAsm.PPC GHC.CmmToAsm.PPC.Regs GHC.CmmToAsm.PPC.RegInfo GHC.CmmToAsm.PPC.Instr GHC.CmmToAsm.PPC.Cond GHC.CmmToAsm.PPC.Ppr GHC.CmmToAsm.PPC.CodeGen + GHC.CmmToAsm.SPARC GHC.CmmToAsm.SPARC.Base GHC.CmmToAsm.SPARC.Regs GHC.CmmToAsm.SPARC.Imm |
