summaryrefslogtreecommitdiff
path: root/compiler/GHC/Driver/Main.hs
diff options
context:
space:
mode:
authorAndreas Klebinger <klebinger.andreas@gmx.at>2023-01-04 15:09:21 +0100
committerAndreas Klebinger <klebinger.andreas@gmx.at>2023-01-06 11:37:58 +0100
commit0366194bcfa263fa4013ac05d9795ffaba2c13a0 (patch)
treec9316ffe3d07a160f63cd3f7b80fce02c678cd1e /compiler/GHC/Driver/Main.hs
parentf649106d8c5304efceac999b0d833defaaa7d4a3 (diff)
downloadhaskell-wip/andreask/spec-transitive.tar.gz
First PoC partially donewip/andreask/spec-transitive
Diffstat (limited to 'compiler/GHC/Driver/Main.hs')
-rw-r--r--compiler/GHC/Driver/Main.hs8
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/GHC/Driver/Main.hs b/compiler/GHC/Driver/Main.hs
index 976cf12b55..4a48e60f25 100644
--- a/compiler/GHC/Driver/Main.hs
+++ b/compiler/GHC/Driver/Main.hs
@@ -175,6 +175,7 @@ import GHC.Core.Multiplicity
import GHC.Core.Utils ( exprType )
import GHC.Core.ConLike
import GHC.Core.Opt.Pipeline
+import GHC.Core.Opt.SpecRec
import GHC.Core.Opt.Pipeline.Types ( CoreToDo (..))
import GHC.Core.TyCon
import GHC.Core.InstEnv
@@ -2488,11 +2489,16 @@ hscTidy hsc_env guts = do
let logger = hsc_logger hsc_env
let this_mod = mg_module guts
+ (specrec_guts) <- withTiming logger
+ (text "CoreTidy"<+>brackets (ppr this_mod))
+ (const ())
+ $! {-# SCC "CoreTidy" #-} (return $ transferSpecRecs guts)
+
opts <- initTidyOpts hsc_env
(cgguts, details) <- withTiming logger
(text "CoreTidy"<+>brackets (ppr this_mod))
(const ())
- $! {-# SCC "CoreTidy" #-} tidyProgram opts guts
+ $! {-# SCC "CoreTidy" #-} tidyProgram opts specrec_guts
-- post tidy pretty-printing and linting...
let tidy_rules = md_rules details