diff options
author | Joachim Breitner <mail@joachim-breitner.de> | 2015-10-08 14:07:02 +0200 |
---|---|---|
committer | Joachim Breitner <mail@joachim-breitner.de> | 2015-11-06 15:55:21 +0100 |
commit | 761639c60d80273b2036de72c56b7dfa26cd5be8 (patch) | |
tree | 7eb581cbb407d8f0a0a441d465880183702db11b /compiler/simplCore/SimplCore.hs | |
parent | 5d3221aeefd3fab8c7ded74110997571805ab2ec (diff) | |
download | haskell-wip/T10918.tar.gz |
Make Call Arity aggressive only in the second runwip/T10918
not that I believe that this is a viable solution, but it should be a
way to work around
https://ghc.haskell.org/trac/ghc/ticket/10918#comment:10
and hopefully tell me whether the whole thing is actually useful.
Diffstat (limited to 'compiler/simplCore/SimplCore.hs')
-rw-r--r-- | compiler/simplCore/SimplCore.hs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/compiler/simplCore/SimplCore.hs b/compiler/simplCore/SimplCore.hs index efe3bafc23..ae4032fd9d 100644 --- a/compiler/simplCore/SimplCore.hs +++ b/compiler/simplCore/SimplCore.hs @@ -271,7 +271,7 @@ getCoreToDo dflags -- Csg.calc, where an arg of timesDouble thereby becomes strict. runWhen call_arity $ CoreDoPasses - [ CoreDoCallArity + [ CoreDoCallArity False , simpl_phase 0 ["post-call-arity"] max_iter ], @@ -299,7 +299,7 @@ getCoreToDo dflags maybe_rule_check (Phase 0), runWhen call_arity $ CoreDoPasses - [ CoreDoCallArity + [ CoreDoCallArity True , simpl_phase 0 ["post-late-call-arity"] max_iter ], @@ -380,8 +380,8 @@ doCorePass (CoreDoFloatOutwards f) = {-# SCC "FloatOutwards" #-} doCorePass CoreDoStaticArgs = {-# SCC "StaticArgs" #-} doPassU doStaticArgs -doCorePass CoreDoCallArity = {-# SCC "CallArity" #-} - doPassD callArityAnalProgram +doCorePass (CoreDoCallArity l) = {-# SCC "CallArity" #-} + doPassD (callArityAnalProgram l) doCorePass CoreDoStrictness = {-# SCC "NewStranal" #-} doPassDFM dmdAnalProgram |