diff options
Diffstat (limited to 'compiler/GHC/Core/Unfold.hs')
-rw-r--r-- | compiler/GHC/Core/Unfold.hs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/compiler/GHC/Core/Unfold.hs b/compiler/GHC/Core/Unfold.hs index 56f8251e3d..3260e83e87 100644 --- a/compiler/GHC/Core/Unfold.hs +++ b/compiler/GHC/Core/Unfold.hs @@ -55,6 +55,7 @@ import GHC.Data.Bag import GHC.Utils.Logger import GHC.Utils.Misc import GHC.Utils.Outputable +import GHC.Types.Basic ( StateHackFlag ) import GHC.Types.ForeignCall import GHC.Types.Name import GHC.Types.Tickish @@ -88,10 +89,12 @@ data UnfoldingOpts = UnfoldingOpts , unfoldingReportPrefix :: !(Maybe String) -- ^ Only report inlining decisions for names with this prefix + + , unfoldingStateHack :: !StateHackFlag } -defaultUnfoldingOpts :: UnfoldingOpts -defaultUnfoldingOpts = UnfoldingOpts +defaultUnfoldingOpts :: StateHackFlag -> UnfoldingOpts +defaultUnfoldingOpts st_hack = UnfoldingOpts { unfoldingCreationThreshold = 750 -- The unfoldingCreationThreshold threshold must be reasonably high -- to take account of possible discounts. @@ -122,6 +125,8 @@ defaultUnfoldingOpts = UnfoldingOpts -- Don't filter inlining decision reports , unfoldingReportPrefix = Nothing + + , unfoldingStateHack = st_hack } -- Helpers for "GHC.Driver.Session" |